工具类-Java列表拆分

  • Post author:
  • Post category:java


工具类-Java列表拆分

数据量太大,可拆分成指定大小的二级列表。

支持泛型,可用于所有一级列表。

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

public class ListUtils {
    public static <T> List<List<T>> subList(List<T> list, Integer shardingSize) {
        List<List<T>> result = new ArrayList<>();
        if (list == null || list.size() == 0 || shardingSize == 0) {
            return result;
        }
        int index = 0;
        int start = 0;
        int end = 0;
        while (index < list.size()) {
            start = index;
            //如果越界,那就取最大值
            end = Math.min(index + shardingSize, list.size());
            List<T> subList = list.subList(start, end);
            result.add(new ArrayList<>(subList));
            index += shardingSize;
        }
        return result;
    }
}

如遇问题或者bug,欢迎反馈



版权声明:本文为HHCS231原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。