如下图,我们本身数据第一条是保温箱,分完组后跑到最后一条取了。 先来看看源码 聚合后的数据是用HashMap来收集的,所以打乱了原本的顺序 groupingBy默认使用HashMap来收集数据。把HashMap(无序性)换成LinkedHashMap(有序性)即可。 如下图👇 Collectors.groupingBy(实体::字段,LinkedHashMap::new,Collectors.toList()) 换成LinkedHashMap可以看到我们分组后的顺序就对的上了