stream流实现分页
时间: 2023-10-22 18:08:03 浏览: 140
实现分页功能
在流实现分页时,我们需要先确定每一页的大小和当前需要显示的页码。接着,我们可以使用Java 8中的Stream API中的skip()和limit()方法来实现分页功能。skip()方法用于跳过前面的元素,而limit()方法用于限制元素数目。
下面是一个示例代码:
```java
List<String> list = Arrays.asList("a", "b", "c", "d", "e", "f", "g", "h", "i", "j");
int pageSize = 3;
int pageNum = 2;
List<String> pageList = list.stream()
.skip(pageSize * (pageNum - 1))
.limit(pageSize)
.collect(Collectors.toList());
System.out.println(pageList);
```
在这个示例中,我们使用了一个字符串列表作为数据源,每一页的大小为3,当前需要显示的页码为2。我们先使用skip()方法跳过前面的6个元素(即前两页的元素),然后使用limit()方法限制元素数量为3,最后使用collect()方法将结果收集到一个新的列表中。
输出结果为:
```
[d, e, f]
```
这就是第二页的数据。
阅读全文