本文将详细解释JAVA工具如何将一个列表分成n个列表。文章内容质量很高,我就分享给大家作为参考。希望大家看完这篇文章后对相关知识有一定的了解。
00-1010批量处理一条大数据:比如从(Excel、txt、数据库)中逐行读取数据,最后读取1W数据,再对这1W数据进行业务处理,一条条遍历太慢。你可以把这个大列表拆分成n个,然后用n个线程运行,这样效率会快很多。下面的代码是其中使用的一个工具类:将一个List分成n个小列表。
00-1010条目:大名单。
输出:n个小列表。
思考:就像小学的除法。10/3=3比1多。10条数据,分成3个列表,然后每个列表分成3个1以上,然后只有前面一个分成1以上,第一个列表分成3然后加上1余数等于4。第二个列表分为三个,然后最后一个列表分为三个。代码如下,可以直接复制运行。
编程中的需求
/**
*将一个列表分成n个列表。
* @param源
* @返回
*/
publicatstatistlisttaverageassign(listsource,intn){ 0
ListListTresult=NewArraylististt();
intermainder=source . size()% n;//先计算余数。
int number=source . size()/n;//然后是商。
intoffset=0;//偏移量(用于标识添加的余数)
for(inti=0;在;I){ 0
ListTvalue
if(reminder 0){ 0
value=source . sublist(I *数字偏移量,(I 1)*数字偏移量1);
余数-;
偏移;
}else{
value=source . sublist(I *数字偏移量,(I 1)*数字偏移量);
}
result . add(value);
}
返回结果;
}关于JAVA工具如何将一个列表分成n个列表,我们将在这里分享。希望如此。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/44634.html