package cn.tk.netcore.rest;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Listgrop{

//方法二:效率比较高 备注:pageSize集合显示的分组个数,soruceDatas为集合原数据
private static List<List<String>> groupByList(List<String> sourceDatas,int pageSize) {
// 分组集合
List<List<String>> groupLists = new ArrayList<> ();
// 分组数据
List<String> tempDatas = new ArrayList<> ();
if (sourceDatas != null && pageSize > 0) {

for (int i = 0;i < sourceDatas.size ();i++) {
if (i % pageSize == 0) {
if (!tempDatas.isEmpty ()) {
groupLists.add (tempDatas);
}
tempDatas = new ArrayList<> ();
tempDatas.add (sourceDatas.get (i));

} else {
tempDatas.add (sourceDatas.get (i));
}
}
}
if (!tempDatas.isEmpty ()) {
groupLists.add (tempDatas);
}
return groupLists;
}

public static void main(String[] args) {
// 分组记录数
int pageSize = 5;
// 原始数据
List<String> list = new ArrayList<String> (Arrays.asList ("a","b","c",
"d","e","f","g","h"));
System.out.println (groupByList (list,pageSize));
}

}

按list大小进行分组的更多相关文章

  1. BarTender表单的人性化设计—分组框

    BarTender 2016已经支持用户输入信息.从相同位置查询数据库和筛选数据记录,那就是数据输入表单了.这个功能相信迎合了很多用户的需求,主要作用体现在打印时数据输入. 对于表单的设计,不同的客户 ...

  2. Python基础知识之排序法

    在Python开发中,我们会经常使用到排序法,排序的最简单的方法是用sort(list)函数,它接受一个列表并返回与有序的元素一个新的列表. 原始列表不被改变. a = [5, 1, 4, 3]    ...

  3. Hark的数据结构与算法练习之桶排序

    算法说明 桶排序的逻辑其实特别好理解,它是一种纯粹的分而治之的排序方法. 举个例子简单说一下大家就知道精髓了. 假如对11,4,2,13,22,24,20 进行排序. 那么,我们将4和2放在一起,将1 ...

  4. 【POJ】1743 Musical Theme

    http://poj.org/problem?id=1743 题意:不可重叠最长重复子串,n<=20000,具体看<后缀数组>-- 罗穗骞 #include <cstdio&g ...

  5. 《数据通信与网络》笔记--QoS

    QoS(Quality of Service)服务质量,是网络的一种安全机制, 是用来解决网络延迟和阻塞等问题的一种技术. 1.QoS参数 衡量服务质量QoS的参数主要包括: 端到端延迟(Delay) ...

  6. 插入排序算法--直接插入算法,折半排序算法,希尔排序算法(C#实现)

    插入排序算法主要分为:直接插入算法,折半排序算法(二分插入算法),希尔排序算法,后两种是直接插入算法的改良.因此直接插入算法是基础,这里先进行直接插入算法的分析与编码. 直接插入算法的排序思想:假设有 ...

  7. 因特网的IP协议是不可靠无连接的,那为什么当初不直接把它设计为可靠的?

    因特网使用的IP协议是无连接的,因此其传输是不可靠的. 这样easy使人们感到因特网非常不可靠,那为什么当初不直接把它设计为可靠的? 先打一个例如.邮局寄送的平信非常像无连接的IP数据报.每封平信可能 ...

  8. netperf 而网络性能测量

    本文首先介绍网络性能測量的一些基本概念和方法.然后结合 netperf 工具的使用.详细的讨论怎样測试不同情况下的网络性能. 汤凯 (tangk73@hotmail.com), 2004 年 7 月 ...

  9. Golomb及指数哥伦布编码原理介绍及实现

    2017年的第一篇博文. 本文主要有以下三部分内容: 介绍了Golomb编码,及其两个变种:Golomb-Rice和Exp-Golomb的基本原理 C++实现了一个简单的BitStream库,能够方便 ...

  10. Scala 运算符和集合转换操作示例

    Scala是数据挖掘算法领域最有力的编程语言之一,语言本身是面向函数,这也符合了数据挖掘算法的常用场景:在原始数据集上应用一系列的变换,语言本身也对集合操作提供了众多强大的函数,本文将以List类型为 ...

随机推荐

  1. Ubuntu16 改 静态IP的方法

    https://blog.csdn.net/mdw5521/article/details/79270035

  2. BIP拓展js的使用

    __app.define("common_VM_Extend.js", function () {   var selectData = null;   var common_VM ...

  3. django日志分割的几种处理

    https://blog.csdn.net/qq_42819407/article/details/125041634

  4. 记录坑:Chrome谷歌浏览器最小化和页面遮挡后JS代码不稳定

    问题:用定时器 setInterval()做个滚动通知的动画,浏览器最小化时,定时器 setInterval()失效了,导致滚动条重叠了 可能原因: js代码不稳定 Chrome谷歌浏览器最小化和页面 ...

  5. ubuntu扩容

    VMware虚拟机 Linux系统 Ubuntu 16.04 硬盘/磁盘扩容效果查看硬盘大小及使用情况 终端:df -h 没有扩容前: 成功扩容后: 主要流程扩展硬盘大小到100G将未分配的60G分配 ...

  6. Springboot实现文件上传下载功能

    一.文件上传 1. controller层 @RestController @RequestMapping(value = "/excel") public class Uploa ...

  7. laravel 内置auth()登录

    auth()命令 auth()->attempt()        登录验证 auth()->check        判断是否登录,有没有session缓存 auth()->log ...

  8. 2022-04-25内部群每日三题-清辉PMP

    1.项目章程批准之后,项目经理开始使用储备分析进行预算工作.哪些文件支持这项工作? A.项目资金需求.成本基准和项目储备计划 B.范围基准.风险登记册和项目进度计划 C.质量管理计划.项目资金需求和风 ...

  9. (linux笔记)开放防火墙端口

    关闭防火墙 CentOS 7.RedHat 7 之前的 Linux 发行版防火墙开启和关闭( iptables ): 即时生效,重启失效 #开启 service iptables start #关闭 ...

  10. Linux 查看enable自启动服务

    pi@pi4:~/client $ systemctl list-unit-files |grep enable autovt@.service enabled avahi-daemon.servic ...