如何将合并后的地图放置到底部?

phe*_*mix -1 java hashmap

合并两张地图后,我注意到显示合并后的地图时,最后一张地图位于顶部:

Map<Integer, String> dataToSage = new HashMap<Integer, String>();
for(InterventionDTO i : list) {
    Map<Integer, String> data = interfaceSageService.getDataToSendToSAGEFromIntervPlanMP(i.getIdintervention());
    data.forEach((key, value) -> dataToSage.merge(key, value, (oldValue, newValue) -> {
        return newValue;
    }));
}
Run Code Online (Sandbox Code Playgroud)

它给出的输出为:

在此输入图像描述

尽管在数据库中数据是有序的:

在此输入图像描述

那么在合并过程中如何将最后合并的地图放在底部呢?

Mir*_*uta 5

使用时不应假定任何顺序HashMap

如果您需要订购,您有两种选择:

  1. 如果您希望根据键的顺序对元素进行排序TreeMap,那么您可以使用. 如果您需要自然排序之外的其他内容,可以传递Comparator给构造函数。
  2. 如果您希望元素根据插入顺序进行排序,LinkedHashMap那么您可以使用.