首頁 >Java >java教程 >如何在Java中有效率地初始化HashMap?

如何在Java中有效率地初始化HashMap?

Susan Sarandon
Susan Sarandon原創
2024-12-17 20:18:11946瀏覽

How to Efficiently Initialize a HashMap in Java?

如何直接簡潔地初始化 HashMap

許多 Java 開發人員都希望有一種簡單的方法來使用鍵值對初始化 HashMap。不幸的是,Java 的標準函式庫缺乏直接適應這種情況的語法。

Java 版本 9 及更高版本

但是,對於 Java 9 及更高版本,有個好消息!引入了新的工廠方法來簡化地圖創建:

  • Map.of:接受最多10 個鍵值對,格式為Map.of("key1", “值1”,“鍵2”,“值2”,...)
  • Map.ofEntries:使用Map.ofEntries(entry("key1", "value1"), entry("key2", "value2"), ...) 處理任意數量的條目

範例:

// Using Map.of for up to 10 elements
Map<String, String> test1 = Map.of("a", "b", "c", "d");

// Using Map.ofEntries for any number of elements
Map<String, String> test2 = Map.ofEntries(entry("a", "b"), entry("c", "d"));

Java 版本8 及以下

對於早期的Java版本,您需要手動新增每個元素。這是使用匿名子類別初始值設定項目的稍微簡潔的選項:

範例:

Map<String, String> myMap = new HashMap<>() {{
    put("a", "b");
    put("c", "d");
}};

注意:

  • 注意:
注意:

注意:

Map<String, String> myMap = createMap();

private static Map<String, String> createMap() {
    Map<String,String> myMap = new HashMap<>();
    myMap.put("a", "b");
    myMap.put("c", "d");
    return myMap;
}
這種方法創建了一個額外的類,可能會影響記憶體和效能。 它可能保存對創建物件的引用,從而防止垃圾回收。 涉及函數的替代方案:範例:

以上是如何在Java中有效率地初始化HashMap?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn