Heim  >  Artikel  >  Java  >  Java EnumMap

Java EnumMap

王林
王林Original
2024-08-30 15:47:49755Durchsuche

Ein Java Collection Framework-Mitglied namens EnumMap, das AbstractMap erweitert, ist eine spezifische Implementierung für die Schnittstellenzuordnung, hauptsächlich für Aufzählungstypen. Darüber hinaus stehen für EnumMap noch mehrere weitere Funktionen zur Verfügung.

Starten Sie Ihren kostenlosen Softwareentwicklungskurs

Webentwicklung, Programmiersprachen, Softwaretests und andere

Es beinhaltet:

  • Es ist nicht synchronisiert.
  • Schneller; Im Vergleich dazu ist HashMap langsamer.
  • Es wird in der natürlichen Reihenfolge des Schlüssels gehalten.
  • Hohe Leistung.
  • Nullschlüssel sind nicht zulässig. Das heißt, eine NullPointerException wird ausgelöst, wenn Nullschlüssel vorhanden sind.
  • Nullwerte können vorhanden sein.
  • Als Schlüssel werden Enum-Elemente verwendet.

Weitere Details zu Java EnumMap werden in den folgenden Abschnitten besprochen.

Syntax

Java EnumMap kann mit der folgenden Syntax deklariert werden.

public class EnumMap<Key extends Enum<Key>,Value> extends AbstractMap<Key,Value> implements Serializable, Cloneable

Konstruktoren in Java EnumMap

Die folgenden Konstruktoren werden häufig in Java EnumMap verwendet:

  • EnumMap(Class<K> keyType):  Es wird eine leere Enum-Map mit dem genannten keyType erstellt.
  • EnumMap(EnumMap<K,? erweitert V> m): Eine Aufzählungszuordnung wird mit dem gleichen Schlüsseltyp wie die erwähnte Aufzählungszuordnung erstellt, sofern anfängliche Zuordnungen vorhanden sind.
  • EnumMap(Map<K,? erweitert V>  m): Eine Enum-Karte wird aus der genannten Karte erstellt.

Methoden in Java EnumMap

Sehen wir uns nun einige der häufig verwendeten Methoden von Java EnumMap an.

  • clear(): Jede in der Karte verfügbare Zuordnung wird beim Aufruf dieser Methode entfernt.
  • clone(): Eine flache Kopie wird für die erwähnte Enum-Map zurückgegeben.
  • containsKey(Objectk): True wird zurückgegeben, wenn die Karte eine Zuordnung für den genannten Schlüssel k hat.
  • containsValue(Objectv): True wird zurückgegeben, wenn die Karte 1 oder mehr als 1 Schlüssel dem genannten Wert v zuordnet.
  • entrySet(): Eine festgelegte Ansicht wird für die Zuordnungen zurückgegeben, die auf der Karte verfügbar sind.
  • equals(Objectob): Karte und das erwähnte Objekt ob werden auf Gleichheit verglichen.
  • get(Objectk): Wert wird zurückgegeben, wenn die Karte eine Zuordnung für den genannten Schlüssel k hat. Wenn für den Schlüssel kein Wert vorhanden ist, wird null zurückgegeben.
  • hashCode(): Hash-Code wird für die Karte zurückgegeben.
  • keySet(): Eine festgelegte Ansicht wird für die Schlüssel zurückgegeben, die auf der Karte vorhanden sind.
  • put(Kkey, V value): Der Wert v wird dem zugeordnet Taste K auf der Karte.
  • putAll(MapK,? erweitert V> m): Jede einzelne Zuordnung aus der angegebenen Karte wird auf diese Karte kopiert.
  • remove(Objectk): Die Zuordnung wird für den genannten Schlüssel k entfernt.
  • size(): Anzahl der in der Karte verfügbaren Schlüsselwertzuordnungen wird zurückgegeben.
  • values(): Eine Sammlungsansicht wird für die auf der Karte verfügbaren Werte zurückgegeben.

Beispiele zur Implementierung von Java EnumMap

Um mehr über die Java Enum Map zu erfahren, implementieren wir die oben genannten Methoden in einigen Programmen.

Beispiel #1

Beispielprogramm zum Erstellen einer Enum-Map und zum Kopieren der Elemente in eine andere Enum-Map.

Code:

import java.util.EnumMap;
class JavaEnumMapExample {
enum fruits {
APPLE, ORANGE, GRAPES, KIWI
}
public static void main(String[] args) {
// EnumMap creation of the fruits enum
EnumMap<fruits, Integer> fr = new EnumMap<>(fruits.class);
// add key-value to the mapping using the method put()
fr.put(fruits.APPLE, 2);
fr.put(fruits.ORANGE, 5);
System.out.println("The key-value pairs in EnumMap 1 is :  " + fr);
//create another enum map fru
EnumMap<fruits, Integer> fru = new EnumMap<>(fruits.class);
// copy all the elements from first enum map to this using the methodputAll()
fru.putAll(fr);
fru.put(fruits.GRAPES, 3);
System.out.println("The key-value pairs in EnumMap 2 is : " + fru);
}
}

Ausgabe:

Java EnumMap

Erklärung zum obigen Programm: Im obigen Programm werden zwei Enum-Maps erstellt. Die erste Karte wird mit 2 Elementen erstellt und die zweite Karte wird durch Kopieren der Elemente der ersten Karte erstellt. Darüber hinaus wird der zweiten Karte ein zusätzliches Element hinzugefügt. Dies erfolgt mit Hilfe der Methoden put() und putAll().

Beispiel #2

Beispielprogramm zum Erstellen einer Enum-Map und zum separaten Abrufen der Schlüssel und Werte.

Code:

import java.util.EnumMap;
class JavaEnumMapExample {
enum fruits {
APPLE, ORANGE, GRAPES, KIWI
}
public static void main(String[] args) {
// EnumMap creation of the fruits enum
EnumMap<fruits, Integer> fr = new EnumMap<>(fruits.class);
// add key-value to the mapping using the method put()
fr.put(fruits.APPLE, 2);
fr.put(fruits.ORANGE, 5);
System.out.println("The key-value pairs in EnumMap 1 is :  " + fr);
// print all the keys in the enum map using the method keySet()
System.out.println("The keys in enum map 1 are : " + fr.keySet());
// print all the values in the enum map using the method values()
System.out.println("The values in enum map 1 are : " + fr.values());
//create another enum map fru
EnumMap<fruits, Integer> fru = new EnumMap<>(fruits.class);
// copy all the elements from first enum map to this using the methodputAll()
fru.putAll(fr);
fru.put(fruits.GRAPES, 3);
System.out.println("The key-value pairs in EnumMap 2 is : " + fru);
// print all the keys in the enum map using the method keySet()
System.out.println("The keys in enum map 2 are : " + fru.keySet());
// print all the values in the enum map using the method values()
System.out.println("The values in enum map 2 are : " + fru.values());
}
}

Ausgabe:

Java EnumMap

Explanation to the above program: Similar to the first program, two enum maps are available here. This program displays the maps’ keys and values independently using the methods keyset() and values(), respectively.

Example #3

Sample program to remove an element from the enum map

Code:

import java.util.EnumMap;
class JavaEnumMapExample {
enum fruits {
APPLE, ORANGE, GRAPES, KIWI
}
public static void main(String[] args) {
// EnumMap creation of the fruits enum
EnumMap<fruits, Integer> fr = new EnumMap<>(fruits.class);
// add key-value to the mapping using the method put()
fr.put(fruits.APPLE, 2);
fr.put(fruits.ORANGE, 5);
System.out.println("The key-value pairs in EnumMap :  " + fr);
// remove an element using the method remove()
int val = fr.remove(fruits.APPLE);
System.out.println("Removed Value: " + val);
System.out.println("The key-value pairs in EnumMap after removing apple :  " + fr);
}
}

Output:

Java EnumMap

Explanation to the above program: In this program, an element is removed from the map using the remove() method and the resultant enum map is printed in the next step.

Conclusion

A detailed explanation of all the aspects such as declaration, methods, constructors of Java EnumMap is discussed in this document in detail.

Das obige ist der detaillierte Inhalt vonJava EnumMap. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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
Vorheriger Artikel:Hashtable in JavaNächster Artikel:Hashtable in Java