Collections communes - Interface BidiMap

De nouvelles interfaces sont ajoutées pour prendre en charge la carte bidirectionnelle. En utilisant une carte bidirectionnelle, une clé peut être recherchée à l'aide de la valeur et la valeur peut être recherchée à l'aide d'une clé facilement.

Déclaration d'interface

Voici la déclaration pour org.apache.commons.collections4.BidiMap<K,V> interface -

public interface BidiMap<K,V>
   extends IterableMap<K,V>

Méthodes

Les méthodes pour l'interface BidiMap sont les suivantes -

N ° Sr. Méthode et description
1

K getKey(Object value)

Obtient la clé actuellement mappée à la valeur spécifiée.

2

BidiMap<V,K> inverseBidiMap()

Obtient une vue de cette carte où les clés et les valeurs sont inversées.

3

V put(K key, V value)

Place la paire clé-valeur dans la carte, en remplaçant toute paire précédente.

4

K removeValue(Object value)

Supprime la paire clé-valeur actuellement mappée à la valeur spécifiée (opération facultative).

5

Set<V> values()

Renvoie une vue d'ensemble des valeurs contenues dans cette carte.

Méthodes héritées

Cette interface hérite des méthodes des interfaces suivantes -

  • org.apache.commons.collections4.Get

  • org.apache.commons.collections4.IterableGet

  • org.apache.commons.collections4.Put

  • java.util.Map

Exemple d'interface BidiMap

Un exemple de BidiMapTester.java est le suivant -

import org.apache.commons.collections4.BidiMap;
import org.apache.commons.collections4.bidimap.TreeBidiMap;
public class BidiMapTester {
   public static void main(String[] args) {
      BidiMap<String, String> bidi = new TreeBidiMap<>();
      bidi.put("One", "1");
      bidi.put("Two", "2");
      bidi.put("Three", "3");
      System.out.println(bidi.get("One"));
      System.out.println(bidi.getKey("1"));
      System.out.println("Original Map: " + bidi);
      bidi.removeValue("1");
      System.out.println("Modified Map: " + bidi);
      BidiMap<String, String> inversedMap = bidi.inverseBidiMap();
      System.out.println("Inversed Map: " + inversedMap);
   }
}

Production

Lorsque vous exécutez le code, vous verrez la sortie suivante -

1
One
Original Map: {One=1, Three=3, Two=2}
Modified Map: {Three=3, Two=2}
Inversed Map: {2=Two, 3=Three}