小编Wiv*_*rge的帖子

Java排序列表,然后使用Stream api从列表中获取子列表

public class Result {
  ...
  private Integer averageRating;
}
Run Code Online (Sandbox Code Playgroud)

我有一个结果列表List<Result>。我想对它们进行排序averageRating,然后想要将特定索引形成为特定索引,例如 10 到 20。

我可以使用Collection.sort()using Comparator.comparing()then take sublist from list来做到这一点。但问题是更高的索引可能大于列表大小,这就是我必须手动处理的原因。像 10 到 20,但列表大小为 15,则将输出 5 个项目。

但是我如何使用 Java Stream API 做到这一点?

我尝试了一些但没有奏效:

List<Result> result = list.stream().sorted(e -> e.getAverageRating()).collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)

java java-8 java-stream

2
推荐指数
1
解决办法
116
查看次数

标签 统计

java ×1

java-8 ×1

java-stream ×1