复制代码代码如下 :
public static void main(String args[]) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("a", "A");
map.put("b", "B");
map.put("c", "C");
// keySet
Iterator<String> iterator = map.keySet().iterator();
while (iterator.hasNext()) {
Clé de chaîne = itérateur.next();
Valeur de chaîne = (String) map.get(key);
System.out.println(valeur);
}
pour (clé de chaîne : map.keySet()) {
Valeur de chaîne = (String) map.get(key);
System.out.println(valeur);
}
// EntrySet
Iterator<Entry<String, Object>> iterator1 = map.entrySet().iterator();
while (iterator1.hasNext()) {
Valeur de chaîne = (String) iterator1.next().getValue();
System.out.println(valeur);
}
pour (Entrée<String, Object> : map.entrySet()) {
Valeur de chaîne = (String) Entry.getValue();
System.out.println(valeur);
}
//
pour (Object str : map.values()) {
System.out.println(str);
}
}
关于效率问题:
如果你使用HashMap
同时遍历key et value时,keySet与entrySet方法的性能差异取决于k Il y a aussi HashMap Il s'agit d'une valeur de valeur.entrySet est une clé et une valeur de valeur. Il s'agit d'un exemple de valeur de HashMap, et d'un jeu d'entrées.优势就会体现出来。例如上述对比测试中,当key是最简单的数值字符串时,keySet Il s'agit d'un système d'entrée à 10 %. t.的复杂化,entrySet的优势将会明显体现出来。当然,我们可以根据实际情况进行选择
Il s'agit d'une clé pour keySet, d'une clé pour keySet et d'une valeur pour la valeur d'entrySet.来了,浪费了性能和空间。在上述测试结果中,keySet比entrySet方法耗时少23%。
Il s'agit d'une valeur de valeur, d'une valeur de valeur et d'un ensemble de clés d'entrée.
如果你使用TreeMap
Il s'agit d'une clé et d'une valeur, d'un HashMap et d'un EntrySet. Il s'agit d'un jeu de keySet. ap indique la valeur de la valeur, il s'agit d'une entrée de jeu de clés et d'une clé. value.