Heim > Java > Funktionsmethode zum Abrufen des vorherigen und neuen Werts von ConcurrentHashMap

Funktionsmethode zum Abrufen des vorherigen und neuen Werts von ConcurrentHashMap

王林
Freigeben: 2024-02-08 22:40:37
nach vorne
946 Leute haben es durchsucht

Der PHP-Editor Youzi stellt Ihnen die Funktionsmethode zum Erhalten des vorherigen Werts und des neuen Werts in ConcurrentHashMap vor. ConcurrentHashMap ist eine Thread-sichere Hash-Tabellenimplementierung, die häufig in der gleichzeitigen Java-Programmierung verwendet wird. Sie bietet einige praktische Funktionsmethoden zum Bearbeiten von Schlüssel-Wert-Paaren in der Hash-Tabelle. Es enthält Funktionsmethoden zum Erhalten des vorherigen Werts und des neuen Werts. Mit diesen Methoden kann der dem Schlüssel entsprechende Wert in der Hash-Tabelle bearbeitet und aktualisiert werden. Als nächstes werden wir die Verwendung und Vorsichtsmaßnahmen dieser Funktionsmethoden im Detail vorstellen.

Frageninhalt

Ich muss den vorherigen Wert und den neuen Wert aus Java Concurrenthashmap (im Scala-Code) abrufen. Um die Thread-Sicherheit zu gewährleisten, verwende ich den compute-Block, der nur den neuen Wert zurückgibt. Ist es möglich, sowohl den neuen als auch den vorherigen Wert zu erhalten, ohne eine Variable mit einem anfänglichen Nullwert zu verwenden? Hier ist meine aktuelle Lösung:

map: ConcurrentHashMap[String, Object] = new ConcurrentHashMap

  def foo = {
    var previousValue: Object = null

    val newValue = map.compute("key", (_, value) => {
      previousValue = Option(value).getOrElse(initialValue)
      setNewValue(previousValue)
     }
    )

    (previousValue, newValue)
  }
Nach dem Login kopieren

Lösung

Nein. Die aktuelle Version von ConcurrentHashMap.

Das obige ist der detaillierte Inhalt vonFunktionsmethode zum Abrufen des vorherigen und neuen Werts von ConcurrentHashMap. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:stackoverflow.com
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage