Beim Lesen eines interessanten Artikels behaupten die Jungs, dass der Unterschied zwischen den beiden Funktionen sind:
Beide Funktionen möchten ein Element hinzufügen, wenn der angegebene Schlüssel noch nicht in Map vorhanden ist.
putIfAbsent fügt ein Element mit dem angegebenen Wert hinzu, während computeIfAbsent ein Element mit dem mit dem Schlüssel berechneten Wert hinzufügt. http://www.buggybread.com/2014/10/java-8-difference-between-map.html
Und
Wir haben gesehen, dass putIfAbsent die zwingende Möglichkeit beseitigt, die if-Anweisung definieren zu müssen, aber was ist, wenn das Abrufen der Java-Artikel unsere Leistung wirklich beeinträchtigt?
Um dies zu optimieren, möchten wir die Artikel erst abrufen, wenn wir wirklich sicher sind, dass wir sie benötigen. Dies bedeutet, dass wir vor dem Abrufen der Artikel wissen müssen, ob der Schlüssel fehlt. http://www.deadcoderising.com/2017-02-14-java-8-declarative-ways-of-modifying-a-map-using-compute-merge-and-replace/
Ich habe nicht verstanden, was die Unterschiede sind. Können Sie diese beiden Funktionen näher erläutern?