文
章
目
录
章
目
录
List集合可以通过stream()进行分组,但是一般默认得到的是无需的map集合,那么如何分组成有序的LinkedHashMap集合呢,我们来看下实现方式。
1、首先看下默认的分组,无序的map
Map<String, List<Student>> map = studentList.stream().collect(Collectors.groupingBy(Student::getSchool));
这样返回的是无序的map,如果想转有序,只能二次手工转了,非常不方便。
2、直接转有序LinkedHashMap方式
Map<String, List<Student>> map = studentList.stream().collect(Collectors.groupingBy(Student::getSchool, LinkedHashMap::new, Collectors.toList()));
用以上的groupingBy指定构造LinkedHashMap即可轻松实现有序。
以上就是List stream分组成有序的LinkedHashMap实现方式。