java 实现每次从list中取5000条数据放入新list

public static <T> List<List<T>> split(List<T> resList, int count) {
if (resList == null || count < 1)
return null;
List<List<T>> ret = new ArrayList<List<T>>();
int size = resList.size();
if (size <= count) {
// 数据量不足count指定的大小
ret.add(resList);
} else {
int pre = size / count;
int last = size % count;
// 前面pre个集合,每个大小都是count个元素
for (int i = 0; i < pre; i++) {
List<T> itemList = new ArrayList<T>();
for (int j = 0; j < count; j++) {
itemList.add(resList.get(i * count + j));
}
ret.add(itemList);
}
// last的进行处理
if (last > 0) {
List<T> itemList = new ArrayList<T>();
for (int i = 0; i < last; i++) {
itemList.add(resList.get(pre * count + i));
}
ret.add(itemList);
}
}
return ret;
}

原文地址:https://www.cnblogs.com/winddogg/p/10920076.html

时间: 2024-11-01 15:49:06

java 实现每次从list中取5000条数据放入新list的相关文章

Oracle的trunc和dbms_random.value随机取n条数据

今天在review项目代码的时候看到这样一个问题,有一张号码表,每次需要从这样表中随机取6个空闲的号码,也就是每次取出来的6个号码应该都会有所不同.然后我就看到了这样的SQL select   t.*     from   tel_number_tbl t    where   t.status = '空闲'      and   t.area_code = '0571'      and   t.delete_flg = '未删除'      and   rownum <= 6order by

c# 对List&lt;T&gt; 某字段排序,取TOP条数据

//排序的对象里的字段数据准备 try { cmr.v4 = Double.Parse(cmr.v3) - Double.Parse(cmr.v2); } catch (Exception e) { }  cmjList.Add(cmr); //建立临时List<T> List<CModelJunction> cmjList_showtab = new List<CModelJunction>();//用于显示在右上表格中的junction 100条 //排序后取TOP

lr参数化——500户并发迭代1次 循环取5条数据

lr参数化——500户并发迭代1次 循环取5条数据 比如vuser1.vuser2.vuser3..........,vuser500 shuju1,shuju2,shuju3,shuju4,shuju5 想实现vuser1取shuju1,vuser2取shuju1,vuser3取shuju1,vuser4取shuju1,vuser5取shuju1..........vuser100取shuju1. vuser101取shuju2,vuser102取shuju2,vuser103取shuju2,

.Net中把图片等文件放入DLL中,并在程序中引用

[摘要] 有时我们需要隐藏程序中的一些资源,比如游戏,过关后才能看到图片,那么图片就必须隐藏起来,否则不用玩这个游戏就可以看到你的图片了,呵呵. 本文就讲述了如何把文件(比如图片,WORD文档等等) 隐藏到DLL中,然后在程序中可以自己根据需要导出图片进行处理. 注:本站原创,转载请注明本站网址:http://www.beinet.cn/blog/ [全文] 第1步:我们要生成一个资源文件,先把要隐藏的文件放入到这个资源文件中 (资源文件大致可以存放三种数据资源:字节数组.各种对象和字符串) 首

Bag标签之删除书包中的一条数据

删除书包中的一条数据 查询 <esql module=help id=list> Select ID,Subject,Writer,DayTime From Messages </esql> 删除前循环输出 <table border=1> <tr><th>ID</th><th>主题</th><th>作者</th><th>时间</th></tr> &l

使用JDBC向数据库中插入一条数据

原谅我是初学者,这个方法写的很烂,以后不会改进,谢谢 /** * 通过JDBC向数据库中插入一条数据 1.Statement 用于执行SQL语句的对象 1.1 通过Connection 的 * createStatement() 方法来获取 1.2 通过executeUpdate(sql) 的方法来执行SQL 1.3 * 传入的SQL可以是INSERT/UPDATE/DELETE,但不能是SELECT * * 2.Connection和Statement使用后一定要记得关闭 需要在finally

sql分组取第一条数据

sq分组取第一条数据的一个方法: select * from ( select row_number() over(partition by ID order by ID) as rownum , * from table ) as temp where temp.rownum = 1

shell第一列相同即判断为重复,只取其中一条数据

例如 123456.txt内容如下 90115601,2137786735     36684 90115601,2137786735     36684 90118301,17751822       34898 90145133,2050186877     3847 90145133,2050186877     3847 90151825,3580430507     37974 90151825,3580430507     37974 90188754,2987861307    

Oracle分组取第一条数据

看看以前的私密日志,原来自己之前被很多小而简单的问题困惑过! 看着那时候我们还是新手中的新手做的备忘笔记! 其实就是用了Oracle的统计函数而已! 以前的日记(看样子应该是以前公司的源码,呵呵--)如下:勿喷! 对多数据进行分组排序后取每组第一条记录: SELECT * FROM ( SELECT ROW_NUMBER() OVER( PARTITION BY ZA40011_3.URIAGE_DENPYO_NO,ZA40011_3.URIAGE_DENPYO_ROW_NO ORDER BY