背景 最近项目开发用到对集合进行分组,按照区域分组后发现和集合的顺序不一致 发现问题 查出来的数据集合 进行排序后再用groupingBy进行聚合,发现数据的顺序发生了变化 探索过程 打开源码 第一个参数:分组按照哪个字段分组 第二个参数:分组最后用什么容器保存返回 第三个参数:分组后的结果如何收集 问题应该是出在了第二个参数 默认用hashmap保存分组后的数据 hashmap无序 问题解决 将第二个参数替换成LinkedHashMap