1,平時開發中對map的使用很多,然後發現了很多map可能存在的各種問題;如hashmap 需要放置 1024 個元素,由於沒有設定容量初始大小,隨著元素不斷增加,容量 7 次被迫擴大,resize 需要重建 hash 表,嚴重影響效能,因此最好在初始化時設定map的大小;
2,用 entryset 遍歷 map 類集合 kv,而不是 keyset 方式進行遍歷。因為keyset 其實是遍歷了 2 次,一次是轉為 iterator 物件,另一次是從 hashmap 中取出key 所對應的 value。而 entryset 只是遍歷了一次就把 key 和 value 都放到了 entry 中,效率更高。如果是 jdk8,使用 map.foreach 方法
遍歷map的幾種方式:
mapmp1 = new hashmap();
//mapmp2 = new hashmap();
mp1.put("test", "00");
for(map.entrymp:mp1.entryset())
for(string key:mp1.keyset())
for(string values:mp1.values())
for(iteratori = mp1.keyset().iterator();i.hasnext();)
iterator> it = mp1.entryset().iterator();
while(it.hasnext())
jdk8 map.foreach 方法遍歷:
mapmp1 = new hashmap();mp1.put("test", "00");
mp1.foreach((k,v) -> system.out.println(k));
Map的幾種遍歷方式
public class mapiterator entryset for map.entryentry map.entryset jdk8 map.foreach s,o system.out.println s o map.foreach s,o keyset 先通過map.keyset 獲取k...
遍歷Map的幾種方式
map的遍歷方式 public class iteration 第二種使用values遍歷values值 system.out.println 第二種使用values遍歷 for string value map.values 第三種使用entryset遍歷 system.out.println 第...
遍歷Map的幾種方式
public static void main string args 第二種 通過iterator迭代器遍歷迴圈map.entryset iterator system.out.println 通過map.entryset使用iterator遍歷key和value iterator it map....