<span>【实用场景】Java按照size切分List</span>

针对于List的size比较大,使用多线程处理任务时,可以将List分割为一个一个比较小的任务单元进行处理。

例如集合大小:645,按照100分割,会将集合分割为6个size为100的集合和一个size为45的集合,方便配合多线程处理。

实现代码如下:

public class SubListTest {
    public static void main(String[] args) {
        List list = new ArrayList();
        for (int i = 0; i < 645; i++) {
            list.add(i);
        }

        int index = 100;
        for (int i = 0; i < list.size(); i += 100) {
            if (i + 100 > list.size()) {        
                index = list.size() - i;
            }
            List newList = list.subList(i, i + index);
            System.out.println("size:"+newList.size());
        }
    }
}

输出结果:

size: 100
size: 100
size: 100
size: 100
size: 100
size: 100
size: 45
全部评论

相关推荐

用微笑面对困难:不是你千万别小看这家公司,他们的预估市值成倍上涨,三次在报告看见这个公司了,总之如果是给股权的话可以试试,未来没准真能发家致富哈哈哈哈
点赞 评论 收藏
分享
LXXXXd:有点杂,想搞自动化的话没必要把法律的经历写上去
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务