The SortedMap Interface
SortedMap
은Map
이다. 이것은 정렬 순서대로 내용을 저장한다. 이것은 자연적인 정렬 방식을 이용하거나. Comparator가 제공된경우 해당 정렬 방식으로 SortedMap를 생성한다. 자연 정렬 방식과 Comparator은 Object Ordering에서 논의했다. SortedMap 인터페이스는 일반적인 normal Map을 위한 인터페이스를 제공하며 다음과 같다.다음은
Range view
— sorted map에서 병화가능한 범위 처리를 수행한다.Endpoints
— 첫번째 혹은 마지막 키 값을 sorted map로 부터 획득한다.Comparator access
— sort 방법으로 Comparator을 이용한경우 그 객체를 반환한다.SortedSet
의 연속적인 처리를 위한 인터페이스이다.public interface SortedMap<K, V> extends Map<K, V>{
Comparator<? super K> comparator();
SortedMap<K, V> subMap(K fromKey, K toKey);
SortedMap<K, V> headMap(K toKey);
SortedMap<K, V> tailMap(K fromKey);
K firstKey();
K lastKey();
}
Map Operations
SortedMap는 Map로 부터 상속 받았다. 그러므로 sorted map과 normal map의 기능을 직접적으로 이용할 수 있으나 다음 두가지 예외 상황이 있다.비록 인터페이스가 보장을 해 주지는 않겠지만, Collection 뷰의 toString 메소드 맵에 저장된 순서대로 값을 출력해준다.
- iterator을 이용하여 반환된 Iterator는 sorted map에서 정렬된 순서대로 그 값을 탐색한다.
- Collection views의 toArray 처리는 저장된 키와 값 혹은 엔트리의 정렬된 순서대로 값이 변형된다.
Standard Constructors
관습적으로 모든 범용 맵 구현은 생성자를 통해서 Map를 받아서 SortedMap으로 변경한다. TreeMap에서 이것은 키 값을 그들이 가진 자연 정렬 방식으로 저장된 맵을 생성한다. 이것역시 실수이겠지만 정렬된 맵을 새로 정렬된 맵으로 생성할때, 자연 정렬 방식으로 정렬을 해 버린다. sorted map은 역시 Comparator이나 특정 Comparator을 가지고 있는 비어 있는 맵을 인자로 받는다. 만약 이 값이 널이라면 Map는 자연정렬 방식을 이용하여 정렬을 수행하게 된다.,
Comparison to SortedSet
이러한 인터페이스는 정확히 SortedSet에서 연속적인 맵과 같으므로 모든 용어나 코드는 The SortedSet Interface 섹션에서 확인해볼수 있으며, 작은 변경을 통해서그 값을 확인해볼수 있을 것이다.
'WEB_Programming > Pure Java' 카테고리의 다른 글
Regular Expression > Introduction (0) | 2008.11.06 |
---|---|
Get disconnected with CachedRowSet (0) | 2008.11.04 |
The SortedSet Interface (0) | 2008.11.03 |
Object Ordering (0) | 2008.10.29 |
The Map Interface (0) | 2008.10.28 |