【Java】【17】将大批量的List数据分割成小批量的

/**
     * 实现java 中 list集合中有几十万条数据,每100条为一组取出
     * @param list 可穿入几十万条数据的List
     * @return map 每一Key中有100条数据的List
     */
    @SuppressWarnings({ "unchecked", "rawtypes" })
    public Map groupList(List list){       
        int listSize = list.size();
        int toIndex = 100;
        Map map = new HashMap();     //用map存起来新的分组后数据
        int keyToken = 0;
        for (int i = 0; i<list.size(); i+=100) {
            if (i+100 > listSize) {        //作用为toIndex最后没有100条数据则剩余几条newList中就装几条
                toIndex = listSize - i;
            }
          List newList = list.subList(i, i+toIndex); //此处可进行一些批量操作
          map.put("keyName"+keyToken, newList);
          keyToken++;
        }     
        return map;
    }

参考博客:

实现java 中 list集合中有几十万条数据,每100条为一组取出 - 艺意 - 博客园
https://www.cnblogs.com/wkrbky/p/6100984.html

JAVA大集合数据分批次进行切割处理 - 刘小品。 - 博客园
https://www.cnblogs.com/lewisat/p/4339748.html

posted @ 2019-05-04 14:56  花生喂龙  阅读(1806)  评论(0编辑  收藏  举报