2017-03-17 2 views
0

Ich arbeite in Payment-Gateway-Unternehmen und während der Analyse des Codes bin ich auf ImmuatbleMap Objekte. Ich möchte alle Details darüber wissen. Was ist es? Was sind seine Vorteile gegenüber der Karte? Hat Core Java seine Unterstützung für ImmuatbleMap?Unterschied zwischen Karte und ImmutableMap

+3

Mögliches Duplikat von [Was ist mit unveränderlich gemeint?] (Http://StackOverflow.com/questions/279507/what-is-meant-by-immutable) –

+3

Haben Sie dieses https://github.com/ gelesen google/guava/wiki/ImmutableCollectionsErklärt? Ich denke, dass Ihre Frage zu weit gefasst ist, um hier behandelt zu werden. – RubioRic

+1

versuchen Sie diesen Link http://StackOverflow.com/Questions/8892350/immutable-VS-Unmodifiable-Collection –

Antwort

2

ImmutableMap s werden in Guava eingeführt, sie entsprechen Javas Map API, aber mit zusätzlichen Garantien.

Auf den Punkt gebracht:

  • Sie nicht hinzufügen können, ersetzen oder Einträge entfernen
    • sie „völlig unveränderlich“ sind, wenn der Eintrag Objekte Zustand
    • als Folge nicht wandelbar, sie sind threadsicher
  • null s verboten
  • (leicht) zeit- und platzspar im Vergleich zu üblichen Java-Kollektionen
  • Iterationsreihenfolge vorhersehbar ist

Für vollständige Informationen Guava's guide und javadoc for ImmutableCollection sehen, die auf Karten und andere Guava sind unveränderlich Sammlungen gelten.

+1

Sie könnten einen Link zu https://github.com/google/guava/wiki/ImmutableCollectionsExplained#why hinzufügen, in dem auch "Zeit- und Platzeinsparungen" erwähnt werden. – mfulton26

+1

fertig, danke :) – rrobby86

Verwandte Themen