Klasse ArrayMap<K,V>

java.lang.Object
de.svws_nrw.core.adt.map.ArrayMap<K,V>
Typparameter:
K - Der Typ der Schlüssel-Werte.
V - Der Typ der zugeordneten Werte.
Alle implementierten Schnittstellen:
Map<K,V>

public final class ArrayMap<K,V> extends Object implements Map<K,V>
Diese Klasse stellt eine NavigableMap zur Verfügung, welcher eine Zuordnung von Schlüsseln (Keys) des Typs K zu Werten (Value) vom Typ V unterstützt. Hierbei wird eine Schlüsselmenge unterstützt, welche in einem Array mit Elementen des Typs K übergeben werden. Außerdem muss eine weitere Funktion übergeben werden, welche die Zuordnung eines Elementes auf den Index in dem Array zur Verfügung stellt. Diese Datenstruktur lässt sich gut bei Enums einsetzen.
  • Konstruktordetails

    • ArrayMap

      public ArrayMap(@NotNull K @NotNull [] keyArray)
      Erzeugt eine neue ArrayMap basierend auf dem übergebenen Array mit den Schlüsselwerten. Bei diesem Konstruktor müssen die Schlüsselwerte Elemente einer Aufzählung (Enum) sein.
      Parameter:
      keyArray - das Array mit den Schlüsselwerten
    • ArrayMap

      public ArrayMap(@NotNull K @NotNull [] keyArray, @NotNull @NotNull Function<K,Integer> keyIndexFunction)
      Erzeugt eine neue ArrayMap basierend auf dem übergebenen Array mit den Schlüsselwerten und der zugehörigen Funktion zur Bestimmung des Index eines Schlüsselwertes im Array.
      Parameter:
      keyArray - das Array mit den Schlüsselwerten
      keyIndexFunction - die Funktion zur Bestimmung des Index eines Schlüsselwertes im Array
  • Methodendetails

    • keySet

      @NotNull public @NotNull Set<K> keySet()
      Angegeben von:
      keySet in Schnittstelle Map<K,V>
    • values

      @NotNull public @NotNull Collection<V> values()
      Angegeben von:
      values in Schnittstelle Map<K,V>
    • entrySet

      @NotNull public @NotNull Set<Map.Entry<K,V>> entrySet()
      Angegeben von:
      entrySet in Schnittstelle Map<K,V>
    • getNumberOfKeys

      public int getNumberOfKeys()
      Gibt die Anzahl der möglichen Schlüsselwerte für diese Map zurück. Das entspricht der Länge des Schlüsselwert-Arrays.
      Gibt zurück:
      die Anzahl der möglichen Schlüsselwerte
    • size

      public int size()
      Angegeben von:
      size in Schnittstelle Map<K,V>
    • isEmpty

      public boolean isEmpty()
      Angegeben von:
      isEmpty in Schnittstelle Map<K,V>
    • getKeyAt

      public K getKeyAt(int index)
      Gibt den Schlüsselwert an der übergebenen Stelle index im Array der Schlüsselwerte zurück.
      Parameter:
      index - die Stelle im Array der Schlüsselwerte
      Gibt zurück:
      der Schlüsselwerte oder null, falls der Index nicht gültig ist.
    • containsKey

      public boolean containsKey(Object key)
      Angegeben von:
      containsKey in Schnittstelle Map<K,V>
    • containsValue

      public boolean containsValue(Object value)
      Angegeben von:
      containsValue in Schnittstelle Map<K,V>
    • get

      public V get(Object key)
      Angegeben von:
      get in Schnittstelle Map<K,V>
    • getValueAt

      public V getValueAt(int index)
      Bestimmt den Wert aus der Map anhand des Schlüsselwertes, welcher in dem Array der Schlüsselwerte an der Stelle index steht.
      Parameter:
      index - die Stelle im Array der Schlüsselwerte
      Gibt zurück:
      der Wert an der Stelle oder null, falls kein Wert zugeordnet ist
      Löst aus:
      ArrayIndexOutOfBoundsException - falls der Index ungültig ist
    • put

      public V put(@NotNull K key, @NotNull V value)
      Angegeben von:
      put in Schnittstelle Map<K,V>
    • remove

      public V remove(Object key)
      Angegeben von:
      remove in Schnittstelle Map<K,V>
    • putAll

      public void putAll(Map<? extends K,? extends V> map)
      Angegeben von:
      putAll in Schnittstelle Map<K,V>
    • clear

      public void clear()
      Angegeben von:
      clear in Schnittstelle Map<K,V>