我有这样的代码:
final TreeMap<String, List<MyBean>> map= elements.stream()
.filter(....)
.collect(Collectors.groupingBy(MyBean::getName,
TreeMap::new,
Collectors.toList()
));
如何实现该列表是按someStringField
排序的?
我建议您检查另一个线程中提出的解决方案:TreeMap sort by value
你必须经过分拣机。树映射本身是不可排序的。
您可以添加一个收集器#collecting,然后
到您的收集器#列表
下游:
final TreeMap<String, List<MyBean>> map = elements.stream()
.collect(Collectors.groupingBy(MyBean::getName,
TreeMap::new,
Collectors.collectingAndThen(
Collectors.toList(),
l -> {
l.sort(Comparator.comparing(MyBean::getSomeStringField));
return l;
})
));
问题内容: 我找不到使用此方法的任何示例,所有示例都给出了第二个参数“ null”。我听说此方法用于根据多个标准对类进行排序,但找不到示例。 对于本课程,如果我想根据学生的姓名和年龄对学生列表进行排序,如何使用方法Collections sort(List,Comparator) 问题答案: 在你现有的学生班级的基础上,这通常是我的工作方式,尤其是当我需要多个比较器时。 用法: 编辑 自Java
我使用的是java 11,我有一个名为MyObject的对象列表,看起来像这样 我想使用流将这些对象收集到地图中 我试着用收集器来做。toMap(),但似乎不可能做到这一点 我的问题是可以制作一张地图吗
本文向大家介绍List集合中对数据实现多重规则进行排序的案例,包括了List集合中对数据实现多重规则进行排序的案例的使用技巧和注意事项,需要的朋友参考一下 List集合进行排序时,很多人会考虑冒泡、快速等排序算法,但是对于多重排序规则的话,算法就不太适用了。其实java.util.Collections已经提供了sort的排序方法,并且能自己实现其排序规则。 现在有个场景:我需要对一批优惠券进行排
我有一个嵌套的映射,其中key是员工名称,values是另一个映射,其中key是公司名称,value是经验年数,如下所示 现在我的函数应该返回一个映射,以员工姓名为键,以总经验为值。我如何使用java流(在单个流中)做到这一点
本文向大家介绍javascript 实现map集合,包括了javascript 实现map集合的使用技巧和注意事项,需要的朋友参考一下 前几天项目上想用map集合一样的东西,简单拿对象拼了一下子,今天闲的慌实现一下 大家不要见笑 代码 以上所述就是本文的全部内容了,希望大家能够喜欢。
本文向大家介绍Java Map 按key排序和按Value排序的实现方法,包括了Java Map 按key排序和按Value排序的实现方法的使用技巧和注意事项,需要的朋友参考一下 一、理论准备 Map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等。 TreeMap:基于红黑树(Red-Black tree)的 Naviga