> Java > Java시작하기 > Collection 인터페이스와 Map 인터페이스 개요

Collection 인터페이스와 Map 인터페이스 개요

王林
풀어 주다: 2020-08-14 16:54:02
앞으로
2580명이 탐색했습니다.

Collection 인터페이스와 Map 인터페이스 개요

Java 컬렉션은 모든 유형의 데이터를 저장할 수 있는 컨테이너와 같습니다. Java에서는 일반적으로 컬렉션 클래스가 Java.util 패키지에 존재합니다.

(추천 튜토리얼: Java 입문 튜토리얼)

Java 컬렉션은 주로 컬렉션 시스템과 맵 시스템이라는 두 가지 주요 시스템으로 구성됩니다. 그 중 컬렉션 시스템과 맵 시스템은 각각 두 시스템의 최상위 인터페이스입니다.

Collection에는 주로 List, Set 및 Queue의 세 가지 하위 인터페이스가 있습니다.

순서가 있고 반복 가능함: 목록, 대기열

순서가 없고 반복 불가능함: Set

Collection 인터페이스

1. 목록이 순서가 있고 반복 가능함

1. 장점: 기본 데이터 구조는 배열입니다. 쿼리는 빠르고 추가 및 삭제는 느립니다.

단점: 스레드가 안전하지 않지만 효율성이 높습니다.

2. Vector

장점: 기본 데이터 구조가 배열이므로 쿼리 속도가 빠르고 추가 및 삭제 속도가 느립니다.

단점: 스레드 안전성, 낮은 효율성

3. LinkedList

장점: 기본 데이터 구조가 배열이고 쿼리가 느리며 블록이 추가되고 삭제됩니다.

단점: 스레드가 안전하지 않음, 높은 효율성

2. 세트는 순서가 지정되지 않은 유일한 세트입니다.

1. HashSet

기본 데이터 구조는 해시 테이블입니다. (순서 없음, 고유)

요소의 고유성을 보장하는 방법은 무엇입니까?

hashCode() 및 equals()

2에 의존합니다. LinkedHashSet

기본 데이터 구조는 연결된 목록과 해시 테이블입니다. (FIFO 삽입 순서, 고유)

Ⅰ. 요소는 연결 목록에 따라 정렬됩니다

II. 요소는 해시 테이블에 따라 고유합니다

3. 기본 데이터 구조는 레드-블랙 트리입니다. (고유, 정렬)

요소 정렬을 보장하는 방법은?

자연 정렬, 비교 정렬.

요소의 고유성을 어떻게 보장할 수 있나요?

비교 결과의 반환 값이 0인지 여부에 따라 결정됩니다.

(동영상 튜토리얼 추천:

java 강좌

)

Map 인터페이스

1 Map 인터페이스에는 HashMap, TreeMap 및 HashTable이라는 세 가지 중요한 구현 클래스가 있습니다. 2. 질서정연: 트리맵. 순서가 지정되지 않음: HashMap, HashTable.

3. HashTable과 HashMap의 주요 차이점:

Hashtable의 메서드는 동기식이지만 HashMap의 메서드는 동기식이 아닙니다.

4. Hashtable은 스레드로부터 안전하지만 HashMap은 스레드로부터 안전하지 않습니다.

5. HashMap은 Hashtable보다 효율적입니다.

레거시 코드와의 동기화 또는 호환성에 대한 요구 사항이 없다면 HashMap을 사용하는 것이 좋습니다. Hashtable의 소스코드를 보면 생성자를 제외하면 Hashtable의 모든 공개 메소드 선언에는 동기화 키워드가 있지만 HashMap의 소스코드에는 그런 것이 없다는 것을 알 수 있다.

6. Hashtable은 null 값을 허용하지 않으며, HashMap은 null 값을 허용합니다(키와 값 모두 허용).

7. 다양한 상위 클래스: Hashtable의 상위 클래스는 Dictionary이고 HashMap의 상위 클래스는 AbstractMap입니다.

위 내용은 Collection 인터페이스와 Map 인터페이스 개요의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿