最近在开发时遇到这样一个需求,就是要把返回的数据实现分页功能,因为返回的数据不涉及数据库查询,无法用脚手架封装好的分页功能,但可以用List封装的方法实现。
实现例子如下:
// 创建一个ArrayList
List<String> list = new ArrayList<>();
// 添加数据
list.add("数据1");
list.add("数据2");
list.add("数据3");
list.add("数据4");
list.add("数据5");
list.add("数据6");
// 假设每页显示2条数据
int pageNum = 1; // 页码
int pageSize = 2; // 每页数量
List<String> list1 = list.stream().skip((long) (pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
System.out.println("第一页数据:" + list1);
pageNum = 2;
List<String> list2 = list.stream().skip((long) (pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
System.out.println("第二页数据:" + list2);
输出结果: