所以,我有一个带有一些对象的Stream
,需要从Stream
返回分页结果。例如,从第2到第4个元素。
Stream<String> strs = Stream.of("qwe", "asd", "zxc", "rty", "fgh", "vbn");
请返回仅第2到第4个元素:asd,zxc,rty
。
有可能吗?
谢谢!
所以,我有一个带有一些对象的Stream
,需要从Stream
返回分页结果。例如,从第2到第4个元素。
Stream<String> strs = Stream.of("qwe", "asd", "zxc", "rty", "fgh", "vbn");
请返回仅第2到第4个元素:asd,zxc,rty
。
有可能吗?
谢谢!
Stream#skip
和 Stream#limit
:strs.skip(1).limit(3).forEach(System.out::println);
这将输出以下内容:
asd
zxc
rty
在这个例子中,Stream#skip
跳过了流的第一个元素,而 Stream#limit
则将剩余的流限制为三个元素。skip
和limit
来进行操作。原始答案翻译成“最初的回答”。Stream<String> strs = Stream.of("qwe", "asd", "zxc", "rty", "fgh", "vbn");
String result=strs.skip(1).limit(3).collect(Collectors.joining(" "));
System.out.println(result);
Output:
asd zxc rty