Java 컨테이너 요약
2167 단어 listsetmapCollection
|--SubInterface
|--Set
|-- SortSet
|-- TreeSet
내부는 실제로 TreeMap 객체입니다.
compareTo 방법을 사용하여 비교합니다.
비교적 큰 것은left에 있고, 작은 것은right 끝에 있다.
|-- HashSet
내부는 실제적으로 HashMap 또는 LinkedHashMap이며,dd 방법은 실제적으로 맵을 호출하는put입니다
중복 객체 없음: hashCode 및 equals 메서드를 다시 작성해야 합니다.
무질서하다
저장 허용
동기화 중단
|--List
|-- ArrayList
실제 내부는 수조입니다.
새 ArrayList()에 빈 배열을 만듭니다.add 방법은 크기를 초기화합니다. 기본값은 10입니다.
만일 가득 저장한 후에 확장을 진행하면 확장은 공식에 따라 원용량+원용량>>1;
|-- LinkList
안은 Node 객체 first, last입니다.
add는 linkLast 방법을 호출합니다. 만약 last가 비어 있다면, last와 first는 모두 이 대상입니다.
add 방법은 다음과 같습니다.
final Node<E> l = last;
final Node<E> newNode = new Node<>(l, e, null);
last = newNode;
if (l == null)
first = newNode;
else
l.next = newNode;
size++;
modCount++;
|-- Vector
내부 실은 객체 배열입니다.dd 방법을 호출할 때 크기를 초기화합니다. 기본값은 10입니다.
꽉 차면 용량을 늘리고, 들어오는 용량에 따라 용량을 늘리고, 안 들어오면 원 용량에 따라 용량을 늘린다.
dd 방법은 동기화됩니다.
Map
|--HashMap:AbstractMap의 하위 클래스
HashMap에서 사실 하나뿐인 Map.Entry의 구현 클래스 Node 객체즉, HashMap은 실제로 Node의 배열입니다.기본 크기는 16개, 기본 임계값은 12,
HashMap의 원소 수가 12를 초과할 때 확장을 하고 매번 *2의 확장을 진행한다.
put 방법은 비동기적입니다.null 키와null 값을 허용합니다.
put할 때 방법의 hashCode 방법과 equals 방법을 호출하여 키를 비교합니다.
get 방법은 비동기적입니다.
get 방법은 getNode를 호출한 다음 대상의hashCode와 값 (equals) 을 비교한 다음 되돌아오는 것입니다.
|--LinkedHashMap
|--HashTalbe:Dictionary의 하위 클래스
HashTable 중 실제 하나의 Map.Entry 구현 클래스 Entry 객체즉, HashTable은 실제로 Entry의 배열입니다.기본 크기는 11개, 기본 임계값은 8.
HashTable의 원소 수가 8을 초과할 때, 매번 *2+1의 확장을 진행합니다.임계치는 용량의 75f배다.
put 방법은 동기화됩니다.null 키와null 값을 허용하지 않습니다.
put 방법은 대상의hashCode와 equals 방법을 호출하여 키를 비교합니다.
get 방법은 동기화됩니다.
get 방법은 대상의hashCode와 equals를 호출하여 키의 값을 비교합니다. 존재하면 되돌려줍니다.
|--SortedMap
|--TreeMap
위에는 자신의 몇 가지 총결이 있습니다. 신의 가르침, 보충을 환영합니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[SwiftUI]List화한 CoreData를 가로 스와이프로 행 삭제하는 방법상당히 조사했지만 일본어 자료가 없었기 때문에 비망록으로 남겨 둔다. 아래와 같이 CoreData를 참조한 리스트를 가로 스와이프로 삭제하고 싶었다. UI 요소뿐만 아니라 원본 데이터 당 삭제합니다. 잘 다른 페이지...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.