理解 HashMap 類別對於開發人員來說至關重要,無論是在實際應用程式還是面試中。在這篇文章中,我們將探討如何在 HashMap 中插入、更新和管理鍵值對。這些知識也將為我們的下一篇文章奠定基礎,我們將深入研究 HashSet 並了解這兩個集合之間的關係。
HashMap 將資料儲存為鍵值對,允許高效的查找、更新和刪除。以下是一些重要的特徵:
讓我們透過程式碼片段更詳細地探討這些行為。
put() 方法為映射新增鍵值對。但是,如果鍵已經存在,舊值將被替換。
Map<Integer, Integer> map = new HashMap<>(); // Insert two key-value pairs map.put(1, 2); map.put(2, 3);
說明:
在這裡,我們插入兩個條目:
現在,如果我們嘗試使用相同的鍵插入新值會發生什麼?
// Replacing an existing value map.put(2, 4); // Key 2 already exists, so the value is replaced.
鍵 2 和值 3 已經存在,但是當我們呼叫 put(2, 4) 時,新值 4 取代舊值。這是 HashMap 的預設行為。
在許多情況下,如果鍵已存在,您可能不希望替換值 - 如果處理不當,這可能會導致資料遺失。在這種情況下,我們可以使用 putIfAbsent() 方法。
// Ensuring value isn't replaced if key exists map.putIfAbsent(2, 5);
putIfAbsent() 方法僅在指定鍵尚未存在 於映射中時插入值。由於鍵 2 已經與值 4 關聯,因此此處的方法呼叫不起作用。
System.out.println(map); // Output: {1=2, 2=4}
輸出顯示鍵 2 保留了值 4,因為 putIfAbsent() 沒有覆寫現有值。
HashMap 類別是 Java 中用於儲存鍵值對的強大工具,但了解其重複鍵的行為至關重要。了解何時使用 put() 和 putIfAbsent() 可以幫助您避免資料遺失並編寫高效的程式碼。 HashMap 的基本操作平均時間複雜度為 O(1),是許多效能關鍵型任務的首選。
請繼續關注下一篇文章,我們將探討 HashSet 以及它如何在內部使用 HashMap 確保唯一性!
Java 基礎
陣列面試重點
Java 記憶體基礎
編碼快樂!
以上是破解 HashMap 的基礎知識:Java 開發人員的關鍵概念的詳細內容。更多資訊請關注PHP中文網其他相關文章!