在Java Stream中,可以使用limit
和skip
方法来实现分页功能。
例如,如果我们有一个包含10个元素的Stream,我们可以使用limit
方法来限制返回的元素数量,并使用skip
方法来跳过前几个元素。
下面是一个简单的例子,演示如何使用limit
和skip
方法来实现分页功能:
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
int pageSize = 3;
int page = 2;
List<Integer> result = numbers.stream()
.skip(pageSize * (page - 1)) // 跳过前(page-1)*pageSize个元素
.limit(pageSize) // 限制返回的元素数量为pageSize
.collect(Collectors.toList());
System.out.println(result); // 输出: [4, 5, 6]
在上面的例子中,我们将原始的包含10个元素的Stream通过skip
方法跳过前3个元素,然后通过limit
方法限制返回的元素数量为3,最终得到第二页的数据[4, 5, 6]。