Добавлены новые интерфейсы для поддержки двунаправленной карты. Используя двунаправленную карту, ключ можно искать с помощью значения, а значение можно легко искать с помощью ключа.
Декларация интерфейса
Ниже приводится декларация для
интерфейс 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); } }
Выход
Будет напечатан следующий результат.