BidiMap Interface
1. BidiMap Interface (Apache Commons Collections)
양방향 맵을 사용하면 값을 사용하여 키를 조회할 수 있고 키를 사용하여 쉽게 값을 조회할 수 있다.
1) 선언
org.apache.commons.collections4.BidiMap<K,V>
1
public interface BidiMap<K,V> extends IterableMap<K,V>
2) Methods
Method | Description |
---|---|
K getKey(Object value) | 지정한 값에 현재 매핑된 키를 가져온다. |
BidiMap<V,K> inverseBidiMap() | 키와 값이 반대인 이 맵의 뷰를 가져온다. |
V put(K key, V value) | 키-값 쌍을 맵에 넣어 이전 쌍을 바꾼다. |
K removeValue(Object value) | 현재 지정된 값에 매핑된 키-값 쌍을 제거한다(옵션 작업). |
Set<V> values() | 이 맵에 포함된 값의 설정 보기를 반환한다. |
3) BidiMap Interface 예제
- 예제
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
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);
}
}
- 결과
1
2
3
4
5
1
One
Original Map: {One=1, Three=3, Two=2}
Modified Map: {Three=3, Two=2}
Inversed Map: {2=Two, 3=Three}
[출처 및 참고]
This post is licensed under CC BY 4.0 by the author.