HashMap Java中元素的顺序

时间:2014-05-23 11:44:55

标签: java hashmap

HashMap<Integer, String> map = new HashMap<Integer, String>();
map.put(5,a);
map.put(4,b);
map.put(3,c);
map.put(2,d);
map.put(1,e);
System.out.println(map);

为什么结果相等{1 = e,2 = d,3 = c,4 = b,5 = a}?

2 个答案:

答案 0 :(得分:3)

Java HashMap没有保留任何订单。 API说

  

此课程不保证地图的顺序;在   特别是,它不保证订单将保持不变   随着时间的推移。

答案 1 :(得分:0)

来自HashMap's javadoc

  

此课程不保证地图的顺序;特别是,它不保证订单会随着时间的推移保持不变。

LinkedHashMap足以按插入顺序排序,当需要通过键的比较器进行排序时,可以使用TreeMap