【发布时间】:2023-04-04 13:29:01
【问题描述】:
我已经看到有关此主题的答案,但想查找是否有人有任何示例,其中您从哈希映射派生的键集和值列表将具有不同顺序的键和值。我知道条目本身在哈希映射中可能有未定义的顺序,但是键和值的列表是否可以相互乱序?
这里有一个简短的 sn-p 说明:
public class App {
public static void main(String[] args) {
Map<String,String> stateCapitols = new HashMap<>();
stateCapitols.put("AL", "Montgomery");
stateCapitols.put("AK", "Juneau");
stateCapitols.put("CO", "Denver");
stateCapitols.put("FL", "Tallahassee");
stateCapitols.put("Indiana", "Indianapolis");
stateCapitols.keySet().stream().forEach(System.out::println);
System.out.println();
stateCapitols.values().stream().forEach(System.out::println);
}
}
在上述示例中,AL 是否会出现在与 Denver(或任何其他值)相同的位置?
【问题讨论】:
-
谁知道?也许不是今天。也许不是明天。也许在未来。接口的一个主要好处是能够支持未来的代码 ("Be open for extension, but close for modification")。我不会假设 contract of
Map中未说明的任何内容。
标签: java collections hashmap