Heim >Java >javaLernprogramm >Wie kann ich eine HashMap in Java effizient initialisieren?

Wie kann ich eine HashMap in Java effizient initialisieren?

DDD
DDDOriginal
2024-12-21 13:17:09217Durchsuche

How Can I Efficiently Initialize a HashMap in Java?

So initialisieren Sie eine HashMap direkt: Eine umfassende Anleitung

Das Initialisieren einer Java HashMap kann eine umständliche Aufgabe sein. insbesondere wenn es um statische oder bekannte Werte geht. Es gibt jedoch mehrere Methoden, um dies zu erreichen, jede mit ihren Stärken und Einschränkungen.

Java Version 9 und höher


Java 9 führte Factory-Methoden ein, die HashMap erheblich vereinfachen Initialisierung:



  • Für bis zu zehn Elemente:
    Map<String, String> test1 = Map.of(<br>"a", "b",<br>"c", "d"<br>);


  • < li>Für eine beliebige Anzahl von Elementen:
    Map<String, String> test2 = Map.ofEntries(<br>entry("a", "b"),<br>entry("c", "d")<br>);

Java Version 8 und Unten


Für ältere Versionen gibt es einige Techniken:



  1. Anonyme Unterklasse mit Initialisierer:
    < ;pre>Map myMap = new HashMap() {{
    put("a", "b");
    put("c", "d");
    }};

  2. Separate Funktion für die Initialisierung:
    Map<String, String> myMap = createMap();</p>
    <p>private static Map<String, String> createMap() {<br>Map<String,String> myMap = new HashMap<String,String>();<br>myMap.put("a", "b");<br>myMap.put("c", "d");<br>return myMap;<br>}<br>


  3. Singleton Map (Für Einzeleintrag):
    Map<String,String> test = Collections.singletonMap("test", "test");


Während der anonymen Unterklasse Obwohl die Methode praktisch ist, birgt sie potenzielle Nachteile wie erhöhten Speicherverbrauch und unerwünschtes Verhalten. Alternativ ermöglicht die Verwendung einer separaten Funktion für die Initialisierung, obwohl sie ausführlich ist, eine bessere Kapselung und vermeidet potenzielle Probleme.


Bedenken Sie, dass die Wahl der Methode von der verfügbaren Java-Version und der Komplexität der Methode abhängt Anforderungen. Eine sorgfältige Evaluierung gewährleistet optimale Leistung und Wartbarkeit für Ihre HashMap-Initialisierung.

Das obige ist der detaillierte Inhalt vonWie kann ich eine HashMap in Java effizient initialisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn