[JAVA] Informationen zur Geschwindigkeit beim Abrufen von Werten aus HashMap

Ich habe nach der Geschwindigkeit gesucht

Referenz: https://qiita.com/kei2100/items/0ce97733c92fdcb9c5a9

Ich habe beim Abrufen eines Werts aus HashMap keySet () verwendet, aber ich habe gehört, dass die Verwendung von entrySet () schneller ist, also habe ich es überprüft.

java


import java.util.HashMap;
import java.util.Map.Entry;

public class HashmapentrySetAndkeySet {
	public static void main(String[] args) {

		HashMap<Integer,Integer> map = new HashMap<>();

		//Karte erstellen
		for(int i=0; i<1000; i++){
			map.put(i,i);
		}

		//Versuchen Sie, auf zwei Arten auszugeben
		//keySet()Methode mit
		long start1 = System.currentTimeMillis();
		for(Integer key : map.keySet()){
			Integer value = map.get(key);
			//System.out.println(value);
		}
		long end1 = System.currentTimeMillis();
		System.out.println((end1-start1)+"ms");

		//entrySet()Methode mit
		long start2 = System.currentTimeMillis();
		for(Entry<Integer, Integer> entry : map.entrySet()){
			Integer value = entry.getValue();
			//System.out.println(value);
		}
		long end2 = System.currentTimeMillis();
		System.out.println((end2-start2)+"ms");
	}
}

Mit der Methode zur Verwendung von keySet () und der Methode zur Verwendung von entrySet () zum Zuweisen von 1000 HashMaps ist die Verwendung von entrySet () auf meinem PC etwa 1 ms schneller. Der Unterschied vergrößerte sich, wenn die Standardausgabe verwendet wurde.

Die Schwierigkeit ist, dass es schwer zu lesen ist. Machen Sie sich eine Notiz, damit Sie in Zukunft mit dieser Methode schreiben können.

Recommended Posts

Informationen zur Geschwindigkeit beim Abrufen von Werten aus HashMap
[Android] Holen Sie sich zufällige Schlüssel und Werte von HashMap
Über die Methode
Über numerische Werte
Über das Paket
Über die Nützlichkeit von Monaden aus einer objektorientierten Perspektive
Informationen zum Laden und Initialisieren von Klassen beim Start der JVM
[Hinweis] Wenn die Seitenzugriffsgeschwindigkeit nicht erhöht wird
Sprechen Sie darüber, wie Sie beim Delombok den Quellpfad durchlaufen