我有以下课程
public class ResourceContributor {
private Resource resource;
private Contributor contributor;
private ContributorRole role;
}
我正在尝试按贡献者名称和角色名称对ResourceContributor列表进行排序。到目前为止,我得到的是:
List<ResourceContributor> resourceContributorsSorted = resourceContributors.stream()
.sorted(Comparator.comparing(resourceContributor -> resourceContributor.getContributor().getName()))
.collect(Collectors.toList());
我试过使用thenComparing,但还不知道如何使用它。
只需将调用链接到thenComparing,您将需要进行类型转换,以避免出现编译错误:
resourceContributors.stream()
.sorted(Comparator.comparing((ResourceContributor resourceContributor) -> resourceContributor.getContributor().getName())
.thenComparing(resourceContributor -> resourceContributor.getRole().getName()))
.collect(Collectors.toList());
我有一个这样的方法: 此方法需要以如下字符串形式返回3个最昂贵项目的产品ID:“item1,item2,item3”。我应该只能使用溪流,我被困在这里了。我应该能够按值对项目进行排序,然后获得产品ID,但我似乎无法使其正常工作。 编辑: 产品ID位于入口类中
我有以下课程 我正在尝试按贡献者名称和角色名称对ResourceContributor列表进行排序。到目前为止,我得到的是: 我已经尝试使用then比较,但还不知道如何使用它。
我对从流中排序列表感兴趣。这是我正在使用的代码: 我是不是漏了什么?之后不会对列表进行排序。 它应该根据最低值的项目对列表进行排序。 以及打印方法:
问题内容: 我有以下情况 我已经合并所有列表从从对象地图。 知道如何使用Java 8流API吗? 问题答案: 我想这就是您要寻找的。 例如:
问题内容: 我的清单包含大小等的集合。我尝试这样做,但似乎不起作用。 我想要的最终结果是。 我可以尝试添加在所有的元素和那种出来再做出新的的。但是,有某种班轮吗? 更新: 这可行,但是可以简化吗? 问题答案: @Eugene的回答很甜蜜,因为番石榴很甜。但是,如果您碰巧在类路径中没有番石榴,这是另一种方式: 首先,我将所有集合映射到一个流中,然后对所有元素进行排序,最后,将整个排序后的流收集到集合
我有以下情况 我必须合并所有列表从映射的对象。 知道如何使用Java8流API吗?