对Hashmap的顺序有疑问

时间:2019-07-06 02:37:05

标签: java hashmap

我在put()函数中有关于HashMap顺序的问题。 W3schools说:“键的顺序本质上是任意的。它由一系列链接列表来实现。”(W3schools)

我尝试在英格兰和德国之间切换顺序,但输出保持不变。

import java.util.HashMap;

public class MyClass {
  public static void main(String[] args) {

    // Create a HashMap object called capitalCities
    HashMap<String, String> capitalCities = new HashMap<String, String>();

    // Add keys and values (Country, City)
    capitalCities.put("England", "London");
    capitalCities.put("Germany", "Berlin");
    capitalCities.put("Norway", "Oslo");
    capitalCities.put("USA", "Washington DC");
    System.out.println(capitalCities); 
  }

我的预期订单输出为{USA - Washington DC, Norway - Oslo, Germany - Berlin, England - London}。但是,输出为{USA=Washington DC, Norway=Oslo, England=London, Germany=Berlin}。那么,为什么英国首先输出而不是德国? put()函数内部是否有任何默认的排序方法?

0 个答案:

没有答案