Java Collection Toolkit은 Java.util 패키지 아래에 있으며 배열, 링크 된 목록, 스택, 큐, 컬렉션, 해시 테이블 등과 같은 일반적으로 사용되는 많은 데이터 구조를 포함합니다. 학습 Java 컬렉션의 프레임 워크 아래에서 다음 다섯 부분으로 나눌 수 있습니다 : 목록, 세트 컬렉션, 맵 클래스 (Itserator, Itrays)
위 그림에서 볼 수 있듯이 컬렉션 클래스는 주로 수집 및지도의 두 가지 범주로 나뉩니다.
컬렉션은 목록 및 세트와 같은 컬렉션의 매우 추상적 인 인터페이스입니다. 이 컬렉션의 기본 작업이 포함되어 있습니다. 주로 두 부분으로 나뉩니다 : 목록 및 세트.
목록 인터페이스는 일반적으로 목록 (배열, 큐, 링크 된 목록, 스택 등)을 나타내며 그 요소를 반복 할 수 있습니다. 일반적인 구현 클래스는 ArrayList 및 LinkedList이며 일반적으로 사용되지 않는 벡터도 있습니다. 또한 LinkedList는 여전히 큐 인터페이스를 구현하므로 큐로도 사용할 수 있습니다.
세트 인터페이스는 일반적으로 요소를 반복 할 수없는 컬렉션을 나타냅니다 (해시 코드에 의해 보장되고 함수와 같음). 일반적으로 사용되는 구현 클래스에는 해시 세트 및 트리셋이 포함됩니다. Hashset은 Map의 Hashmap을 통해 구현되며 TreeSet은 Treemap을 통해 MAP를 통해 구현됩니다. 또한 TreeSet은 SortedSet 인터페이스를 구현하므로 순서 세트입니다 (세트의 요소는 비슷한 인터페이스를 구현하고 구획 기능을 덮어 쓸어 져야합니다).
Abstract Classe AbstractCollection, AbstractList 및 AbstractSet은 각각 컬렉션, 목록 및 설정 인터페이스를 구현합니다. 이것은 Java Collection 프레임 워크에 사용되는 많은 어댑터 설계 패턴입니다. 이 추상 클래스는 인터페이스를 구현하고 추상 클래스의 인터페이스에서 여러 가지 또는 모든 방법을 구현하는 데 사용됩니다. 이런 식으로, 다음 클래스 중 일부는 인터페이스에서 모든 추상 방법을 구현하지 않고 추상 클래스를 직접 상속하고 필요한 방법을 구현하면됩니다.
맵은 매핑 인터페이스이며, 각 요소는 키 값 키 값 쌍입니다. 마찬가지로, Abstract Class AbstractMap은 어댑터 모드를 통해 맵 인터페이스에서 대부분의 기능을 구현합니다. Treemap, Hashmap, 약점 및 기타 구현 클래스는 AbstractMap을 상속하여 구현합니다. 또한 드물게 사용되는 해시 테이블은 맵 인터페이스를 직접 구현하며 IT 및 벡터는 JDK1.0에 도입 된 수집 클래스입니다.
반복자는 컬렉션을 가로 지르는 반복자입니다 (트래버스 맵은 수집에만 사용됩니다). 컬렉션의 구현 클래스는 반복자 객체를 트래버스 컬렉션으로 리턴하는 iterator () 함수를 구현하고 ListIterator는 특별히 목록을 트래버스하는 데 사용됩니다. 열거는 JDK 1.0에 도입되었으며 반복자와 동일한 함수를 가지지 만 함수는 반복자보다 적으며 해시 가능, 벡터 및 스택에서만 사용할 수 있습니다.
배열 및 컬렉션은 배열 및 컬렉션을 조작하는 데 사용되는 두 가지 도구 클래스입니다. 예를 들어, Arrays.copyof () 메소드는 ArrayList 및 Vector에서 대량으로 호출됩니다. 컬렉션에는 각 컬렉션 클래스의 동기화 된 버전, 즉 스레드 안전 버전을 반환 할 수있는 많은 정적 메소드가 있습니다. 물론, 스레드 안전 조합 클래스를 사용하려면 동시 동시 패키지의 해당 컬렉션 클래스가 선호됩니다.
Java Collection의 소스 코드에 대한 위의 포괄적 인 분석은 편집기가 공유하는 모든 컨텐츠입니다. 나는 그것이 당신에게 참조를 줄 수 있기를 바랍니다. 그리고 당신이 wulin.com을 더 지원할 수 있기를 바랍니다.