자바 용기 지식 정리
4791 단어 자바
그 중에서 녹색 으로 채 워 진 것 은 자주 사용 하 는 유형 이 므 로 중점적으로 파악 해 야 한다.
인터페이스 프로필
자바 용기 의 맨 윗 층 은 모두 인터페이스의 형식 으로 나타 나 서브 인터페이스 로 이 루어 진다.밤 을 들다
Map map = new HashMap();
Iterator
교체 기 는 용 기 를 옮 겨 다 니 는 데 사 용 됩 니 다. JDK 소스 코드 는 다음 과 같 습 니 다.
package java.util;
import java.util.function.Consumer;
public interface Iterator {
boolean hasNext();
E next();
default void remove() {
throw new UnsupportedOperationException("remove");
}
default void forEachRemaining(Consumer super E> action) {
Objects.requireNonNull(action);
while (hasNext())
action.accept(next());
}
}
일반적인 용법:
Iterator iter = l.iterator();
while(iter.hasNext()){
String str = (String) iter.next();
System.out.println(str);
}
Collection
독립 요 소 를 저장 하 는 시퀀스 입 니 다.Collection 아래 에 또 세 개의 키 인터페이스 가 있 습 니 다. List, Set, Queue.
List
요소 가 중복 되 는 질서 있 는 Collection (시퀀스 라 고도 함)정확히 말 하면 목록 은 e1. equals (e2) 의 요 소 를 e1 과 e2 에 만족 시 킬 수 있 고 목록 자체 가 null 요 소 를 허용 하면 여러 개의 null 요 소 를 허용 합 니 다.List 를 실현 하 는 것 은 Array List, LinkedList, Vector, Stack 등 이 있다.
Set
중복 요소 (가 변 대상 포함) 를 포함 하지 않 는 Collection 은 무질서 한 집합 이다.set 는 a. equals (b) 를 가득 채 우 는 요 소 를 포함 하지 않 고 a 와 b 를 포함 하지 않 으 며 최대 null 이 있 습 니 다.Set 를 실현 하 는 인 터 페 이 스 는 EnumSet, HashSet, TreeSet 등 이 있다.
Queue
하나의 대기 열 은 두 개의 단 대기 열 로 머리, 꼬리 양쪽 에 요 소 를 삽입 하고 제거 하 는 것 을 지원 합 니 다. 주로 Array Deque, LinkedBlockingDeque, LinkedList 를 포함 합 니 다.다른 하 나 는 차단 식 대기 열 입 니 다. 대기 열 이 가득 찬 후에 요 소 를 삽입 하면 이상 을 던 집 니 다. 주로 Array BlockingQueue, Priority BlockingQueue, LinkedBlockingQueue 를 포함 합 니 다.
Map
키 - value 형 요 소 를 저장 합 니 다.
일반 용기 및 도구 클래스
ArrayList
데이터 구 조 는 선형 표를 사용 하 는데 장점 은 방문 과 조회 가 매우 편리 하지만 추가 와 삭제 할 때 효율 이 매우 낮다.
LinkedList
데이터 구 조 는 링크 를 사용 하 는데 장점 은 삭제 와 추가 의 효율 이 높 지만 무 작위 로 요 소 를 방문 할 때 효율 이 Array List 류 보다 낮다.
HashSet
데이터 구 조 는 산 목록 을 사용 하 는데 주로 고성능 집합 연산 을 하 는 데 사용 된다. 예 를 들 어 두 개의 집합 에 대해 교차, 집합, 차 집합 등 이다.집합 에는 반복 되 지 않 고 특성 순서 가 없 는 요소 가 포함 되 어 있다.그 값 은 중복 되 거나 무질서 해 서 는 안 된다.
TreeSet
데이터 구 조 는 빨간색 과 검은색 트 리 를 사용 하고 성능 이 HashSet 보다 낮 으 며 정렬 에 사 용 됩 니 다.
HashMap
데이터 구 조 는 산 목록 을 사용 하 는데 가장 많이 사용 되 는 것 은 Collection 입 니 다.
TreeMap
TreeSet 와 마찬가지 로 정렬 에 사 용 됩 니 다.
Arrays、Collections
이 두 가 지 는 도구 류 로 이해 하고 용기 류 의 정태 적 인 방법 을 제공 할 수 있다. 예 를 들 어 2 분 검색, 정렬 등 이다.
일반적인 용기 비교
ArrayList VS Vector
특별한 필요 없 이 보통 ArrayList 를 사용 합 니 다.
ArrayList VS LinkedList
HashTable VS HashMap
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.