【发布时间】:2013-02-19 16:56:42
【问题描述】:
我有一个带有值的 Map 并使用 Map.keySet 方法获取一个 Set。 在这段代码中:
Map<String, String> map = new HashMap<>();
map.put("1", "a");
map.put("2", "b");
map.put("3", "c");
Set<String> set = map.keySet();
for (int i = 0; i < 5; i++) {
for (String key : set) {
System.out.println(key);
}
}
我保证得到
1
2
3
每次都写出来?这个保证写在哪里?在 Javadoc 中?
编辑:实际上我并不关心插入顺序,但我关心这样一个事实,即在集合上使用 for-each 循环会一遍又一遍地产生相同的结果,前提是不重复的映射不会改变(我不要调用 put,remove)。
【问题讨论】:
-
你是否执行了代码。您的代码是否正在编译并产生预期的输出?
-
不是重复的。请阅读我的问题中的编辑