[Java] Aufbewahrungsreihenfolge der festgelegten Werte von HashMap, TreeMap, LinkedHashMap

[Java] Aufbewahrungsreihenfolge der festgelegten Werte von HashMap, TreeMap, LinkedHashMap

Es gibt verschiedene Arten von Karten, aber es gibt einen Unterschied in der Reihenfolge, in der die gespeicherten Werte beibehalten werden (in welcher Reihenfolge sie ausgegeben werden). Ich habe es von den Karten zusammengefasst, die ich oft (persönlich) sehe. Ich bin der Meinung, dass die zu verwendende Karte aufgrund dieser unterschiedlichen Eigenschaften häufig ausgewählt wird.

HashMap TreeMap LinkedHashMap
Unbestimmte Reihenfolge Aufsteigende Reihenfolge des Schlüssels Registrierungsauftrag

Ich habe es unten überprüft.

test.java


public static void main(String[] args) {
	final int key = 0;
	final int value = 1;
	HashMap<String,String> hashMap = new HashMap<String,String>();
	TreeMap<String,String> treeMap = new TreeMap<String,String>();
	LinkedHashMap<String,String> linkedHashMap = new LinkedHashMap<String,String>();

	String[][] keyValue = {{"Japan","America","China","Korea","India"},
							{"Tokyo","Washington D.C.","Beijing","Seoul","New Delhi"}};

	for(int i = 0; i < keyValue[key].length; i++) {
		hashMap.put(keyValue[key][i], keyValue[value][i]);
		treeMap.put(keyValue[key][i], keyValue[value][i]);
		linkedHashMap.put(keyValue[key][i], keyValue[value][i]);
	}
	System.out.println("Geben Sie das Ergebnis von HashMap aus!");
	for(String hashMapKey : hashMap.keySet()) {
		System.out.println( hashMapKey +"Die Hauptstadt von"+ hashMap.get(hashMapKey) + "ist.");
		}
	System.out.println();

	System.out.println("Geben Sie das Ergebnis von TreeMap aus!");
	for(String treeMapKey :treeMap.keySet()) {
		System.out.println( treeMapKey +"Die Hauptstadt von"+ treeMap.get(treeMapKey) + "ist.");
	}
	System.out.println();

	System.out.println("Geben Sie das Ergebnis von LinkedHashMap aus!");
	for(String linkedHashMapKey : linkedHashMap.keySet()) {
		System.out.println( linkedHashMapKey +"Die Hauptstadt von"+ linkedHashMap.get(linkedHashMapKey) + "ist.");
	}
}

Ausführungsergebnis


Geben Sie das Ergebnis von HashMap aus!
Die Hauptstadt Japans ist Tokio.
Die Hauptstadt von China ist Peking.
Die Hauptstadt von Amerika ist Washington D..C.ist.
Die Hauptstadt von Korea ist Seoul.
Die Hauptstadt von Indien ist Neu-Delhi.

Geben Sie das Ergebnis von TreeMap aus!
Die Hauptstadt von Amerika ist Washington D..C.ist.
Die Hauptstadt von China ist Peking.
Die Hauptstadt von Indien ist Neu-Delhi.
Die Hauptstadt Japans ist Tokio.
Die Hauptstadt von Korea ist Seoul.

Geben Sie das Ergebnis von LinkedHashMap aus!
Die Hauptstadt Japans ist Tokio.
Die Hauptstadt von Amerika ist Washington D..C.ist.
Die Hauptstadt von China ist Peking.
Die Hauptstadt von Korea ist Seoul.
Die Hauptstadt von Indien ist Neu-Delhi.

Daher wurde bestätigt, dass HashMap in einer unbestimmten Reihenfolge vorliegt, TreeMap in aufsteigender Reihenfolge der Schlüssel (diesmal in aufsteigender Reihenfolge des Alphabets) und LinkedHashMap in der Registrierungsreihenfolge. Nun, ich vergesse es jedes Mal.

Recommended Posts

[Java] Aufbewahrungsreihenfolge der festgelegten Werte von HashMap, TreeMap, LinkedHashMap
Sortieren Sie die Map-Werte in aufsteigender Schlüsselreihenfolge in Java TreeMap
Java (gesetzt)
Java HashMap-Klasse