复制代码代码如下:
public static void main(String args[]) {
Peta<String, Objek> peta = HashMap baru<String, Objek>();
peta.put("a", "A");
peta.put("b", "B");
peta.put("c", "C");
// keySet遍历
Iterator<String> iterator = peta.keySet().iterator();
sementara (iterator.hasNext()) {
Kunci string = iterator.next();
Nilai string = (String) map.get(kunci);
System.out.println(nilai);
}
untuk (Kunci string : map.keySet()) {
Nilai string = (String) map.get(kunci);
System.out.println(nilai);
}
// entrySet遍历
Iterator<Entri<String, Objek>> iterator1 = peta.entrySet().iterator();
sementara (iterator1.hasNext()) {
Nilai string = (String) iterator1.next().getValue();
System.out.println(nilai);
}
for (Entri<String, Objek> entri : map.entrySet()) {
Nilai string = (String) entri.getValue();
System.out.println(nilai);
}
//
untuk (Objek str : peta.nilai()) {
Sistem.keluar.println(str);
}
}
关于效率问题:
menggunakan HashMap
kunci dan nilai, keySet, entrySet, kunci, dan nilai ey的具体情况,如复杂度(复杂对象)、离散度、冲突率等。换言之,取决于HashMap查找value的开销。entrySet一次性取出所有key和value的操作是有性fungsi HashMap, fungsi nilai, entrySet fungsi keyset, keyset, keyset, keyset, keyset可能反而会更高效,耗时比entrySet少10%。总体来说还是推荐使用entrySe kunci t。因为当keySet,但却是可控的;而随着key的复杂化,entrySet的优势将会明显体现出来。当然,我们可以根据实际情况进行选择
kunci kunci, kunciSet kunci nilai, nilai entri Tingkat pengembaliannya adalah 23%。
只遍历value时,使用vlaues方法是最佳选择,entrySet会略好于keySet方法。
di TreeMap
kunci dan nilai kunci, HashMap, entrySet fitur kunci menggunakan keySet。这是由TreeMap,TreeM ap查找value的开销较大,明显高于entrySet一次性取出所有key和value的开销。因此,遍历TreeMap时强烈推荐使用entrySet方法。