stream流实现分页
时间: 2023-07-08 18:38:40 浏览: 137
在 Java 中,我们可以使用 Stream API 实现分页。具体步骤如下:
1. 使用 Stream API 对数据进行过滤、排序、映射等操作,得到处理后的元素流。
2. 使用 skip() 方法跳过前面的元素,使用 limit() 方法限制取出的元素数量,得到分页后的元素流。
例如,假设我们有一个 List<Student> students,需要实现对学生按照年龄升序排序后进行分页,每页显示 10 条记录,取第 3 页的数据。代码如下:
```
List<Student> students = new ArrayList<>();
// 对学生按照年龄升序排序
List<Student> sortedStudents = students.stream()
.sorted(Comparator.comparing(Student::getAge))
.collect(Collectors.toList());
// 取第 3 页的数据,每页显示 10 条记录
List<Student> pageStudents = sortedStudents.stream()
.skip(20) // 跳过前面 20 条记录,即前两页
.limit(10) // 取出 10 条记录,即第 3 页的数据
.collect(Collectors.toList());
```
这样,我们就可以使用 Stream API 实现分页了。
阅读全文