public static void main(String[] args) {
List<Integer> list = Lists.newArrayList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,18,19,20,21);
int size = 4;
int i = list.size() / size + 1;
System.out.println("总页数:" + i);
for (int page = 1; (page - 1) * size < list.size(); page++) {
List<Integer> collect = list.stream().skip((page - 1) * size)
.limit(size)
.collect(Collectors.toList());
//拿到 collect 当前页的数据 可以进行加工 处理
System.out.println("第" + page + "页数据:" + collect);
}
}
控制台输出结果如下:
总页数:6,数据总数:21
第1页数据:[1, 2, 3, 4]
第2页数据:[5, 6, 7, 8]
第3页数据:[9, 10, 11, 12]
第4页数据:[13, 14, 15, 16]
第5页数据:[17, 18, 19, 20]
第6页数据:[21]