>  기사  >  Java  >  Java의 Set과 List의 관계 및 차이점 소개

Java의 Set과 List의 관계 및 차이점 소개

高洛峰
高洛峰원래의
2017-01-22 15:25:031904검색

두 인터페이스 모두 Collection에서 상속됩니다.

List(inteface)

순서는 요소의 특정 순서가 유지되도록 보장하는 List의 가장 중요한 기능입니다.
— —ArrayList 요소에 대한 빠른 무작위 액세스를 허용합니다.
- LinkedList는 목록 중간에 삽입하고 제거하는 오버헤드가 크지 않습니다. RemoveLast(). 이 메서드를 사용하면 LinkedList를 스택/큐/양방향 대기열로 사용할 수 있습니다.

Set(inteface)

Set에 저장된 각 요소는 고유해야 하며 순서는 요소가 유지된다는 보장은 없습니다. 개체는 빠른 검색을 위해 설계된 Set인 equals() 메서드
를 정의해야 하며, HashSet에 저장된 개체는 hashCode()를 정의해야 합니다. --순서를 보호하는 Set인 TreeSet은 Ordered 시퀀스를 사용하여 Set에서 추출할 수 있습니다.
--LinkedHashSet은 HashSet의 쿼리 속도를 가지며 내부적으로 연결 목록을 사용하여 요소의 순서를 유지합니다. 🎜>
저장 방법이 다릅니다.

TreeSet은 빨간색과 검정색을 사용합니다. 요소는 트리 구조에 따라 정렬됩니다.

HashSet은 빠른 쿼리를 위해 특별히 설계된 해시 함수를 사용합니다. .

LinkedHashSet은 내부적으로 해싱을 사용하여 쿼리 속도를 높이는 동시에 연결 목록을 사용하여 요소의 순서를 유지합니다.

HashSet/TreeSet을 사용할 때 클래스에 대해 equals()를 정의해야 합니다. HashSet의 경우 프로그래밍 방식으로 equals()가 재정의되면 hashCode()도 재정의되어야 합니다.

Java에서 Set과 List의 관계 및 차이점에 대한 더 많은 관련 기사를 보려면 다음을 참조하세요. PHP 중국어 웹사이트!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.