Учебники

Коллекции Commons — интерфейс BidiMap

Добавлены новые интерфейсы для поддержки двунаправленной карты. Используя двунаправленную карту, ключ можно искать с помощью значения, а значение можно легко искать с помощью ключа.

Декларация интерфейса

Ниже приводится декларация для

интерфейс org.apache.commons.collections4.BidiMap <K, V> —

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

методы

Sr.No. Метод и описание
1

K getKey (значение объекта)

Получает ключ, который в данный момент сопоставлен с указанным значением.

2

BidiMap <V, K> inverseBidiMap ()

Получает представление этой карты, где ключи и значения меняются местами.

3

V положить (ключ K, значение V)

Помещает пару ключ-значение в карту, заменяя любую предыдущую пару.

4

K removeValue (значение объекта)

Удаляет пару ключ-значение, которая в данный момент сопоставлена ​​с указанным значением (необязательная операция).

5

Установите значения <V> ()

Возвращает представление Set значений, содержащихся в этой карте.

K getKey (значение объекта)

Получает ключ, который в данный момент сопоставлен с указанным значением.

BidiMap <V, K> inverseBidiMap ()

Получает представление этой карты, где ключи и значения меняются местами.

V положить (ключ K, значение V)

Помещает пару ключ-значение в карту, заменяя любую предыдущую пару.

K removeValue (значение объекта)

Удаляет пару ключ-значение, которая в данный момент сопоставлена ​​с указанным значением (необязательная операция).

Установите значения <V> ()

Возвращает представление Set значений, содержащихся в этой карте.

Унаследованные методы

Этот интерфейс наследует методы от следующих интерфейсов —

  • org.apache.commons.collections4.Get
  • org.apache.commons.collections4.IterableGet
  • org.apache.commons.collections4.Put
  • java.util.Map

Пример интерфейса BidiMap

BidiMapTester.java

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);
   }
}

Выход

Будет напечатан следующий результат.