按指定大小分割List的一种算法。直接贴代码了,至于应用场景留给大家自己去思考。
public static List<List<?>> splitList(List<?> list, int len) { if (list == null || list.size() == 0 || len < 1) { return null; } List<List<?>> result = new ArrayList<List<?>>(); int size = list.size(); int count = (size + len - 1) / len; for (int i = 0; i < count; i++) { List<?> subList = list.subList(i * len, ((i + 1) * len > size ? size : len * (i + 1))); result.add(subList); } return result; }