Java에서 TreeSet과 HashSet의 성능 비교
이 튜토리얼은 사이의 모든 차이점과 공통 기능에 대해 설명합니다. TreeSet 및 HashSet입니다. 실제로, 이것은 ArrayList 대 Vector 및 HashTable 대 HashMap입니다. 아마도 가장 중요한 차이점은 성능입니다.TreeSet 대 HashSet
1) HashSet은 다음과 같은 기본 작업에 대해 일관된 성능 시간을 제공합니다. 추가, 제거, contains 및 size입니다. HashSet은 TreeSet 요소를 정렬할 필요가 없는 경우 HashSet에는 정렬 시스템이 없습니다. 트리셋 기본 작업에 대한 log(n) 시간 보장(add, remove et 포함).
4) TreeSet은 HashSet : first(), last(), headSet() 및 tailSet().
5) HashSet은 메서드를 사용합니다. equals()을 사용하여 두 객체를 비교하고 중복 객체를 감지할 수 있습니다. TreeSet은 compareTo()입니다. equals()은 두 객체가 같고 compareTo()은 zero.
5) HashSet은 메서드를 사용합니다. equals()을 사용하여 두 객체를 비교하고 중복 객체를 감지할 수 있습니다. TreeSet은 compareTo()입니다. equals()은 두 객체가 같고 compareTo()은 zero.
TreeSet과 Java의 HashSet
2) 두 구현은 동기화되지 않습니다. Collections.synchronizedSet().
3) 정렬된 세트를 원하면 HashSet 그런 다음 트리셋 TreeSet 요소를 추가합니다.
결국 사용 선택은 전적으로 필요에 달려 있다고 말할 수 있습니다.
3) 정렬된 세트를 원하면 HashSet 그런 다음 트리셋 TreeSet 요소를 추가합니다.
결국 사용 선택은 전적으로 필요에 달려 있다고 말할 수 있습니다.
HashSet의 예:
import java.util.HashSet;TreeSet 예:
public 클래스 예제 {
public static void main(String[] args) {
HashSet< 문자열> hset = 새로운 HashSet< 문자열> ();
hset.add("1");
hset.add("3");
hset.add("2");
hset.add("5");
for(문자열 s: hset)
System.out.println(s);
}
}
Result:
3
2
1
5
import java.util.TreeSet;References:
public 클래스 예제 {
public static void main(String[] args) {
TreeSet< 문자열> tset = 새 트리셋< 문자열> ();
tset.add("1");
tset.add("3");
tset.add("2");
tset.add("5");
for(문자열 s: tset)
System.out.println(들);
}
}
Result:
1
2
3
5
Java에서 HashSet과 TreeSet의 차이점
해시셋 대 트리셋