TreeSet은 Java 컬렉션 프레임워크에서 제공하는 클래스 중 하나로, 이진 검색 트리의 형태로 데이터를 저장하는 정렬된 Set을 구현한 클래스입니다. TreeSet은 중복을 허용하지 않으며, 모든 요소는 정렬된 순서로 저장됩니다.
1. TreeSet의 특징
- 중복 허용 안 함: TreeSet은 중복된 요소를 허용하지 않습니다. 이미 존재하는 요소를 추가하려고 하면 아무런 작업도 수행하지 않습니다.
- 정렬된 순서로 저장: TreeSet은 내부적으로 이진 검색 트리(Binary Search Tree)를 사용하여 데이터를 저장하므로, 모든 요소는 정렬된 순서로 저장됩니다.
- Null 요소 미허용: TreeSet은 null 값을 허용하지 않습니다.
2. TreeSet의 주요 메서드
- add(E e): 요소를 세트에 추가합니다.
- remove(Object o): 지정된 요소를 세트에서 제거합니다.
- contains(Object o): 지정된 요소가 세트에 있는지 여부를 확인합니다.
- size(): 세트의 요소 수를 반환합니다.
- clear(): 세트에서 모든 요소를 제거합니다.
TreeSet 사용 예제
import java.util.TreeSet;
import java.util.Set;
public class TreeSetExample {
public static void main(String[] args) {
// TreeSet 생성
Set<String> treeSet = new TreeSet<>();
// 요소 추가
treeSet.add("Banana");
treeSet.add("Orange");
treeSet.add("Apple");
treeSet.add("Apple"); // 중복 요소는 무시됨
System.out.println("TreeSet: " + treeSet);
// 요소 제거
treeSet.remove("Orange");
System.out.println("After removing Orange: " + treeSet);
// 요소 확인
System.out.println("Contains Banana? " + treeSet.contains("Banana"));
// 크기 확인
System.out.println("Size: " + treeSet.size());
// 모든 요소 제거
treeSet.clear();
System.out.println("After clearing: " + treeSet);
}
}
위의 예제에서는 TreeSet을 생성하고 여러 메서드를 사용하여 요소를 추가, 제거, 확인 및 크기를 확인하는 등의 작업을 수행하였습니다. TreeSet은 요소가 정렬된 순서로 저장되므로, 출력 결과도 정렬된 순서로 나타납니다.
With ChatGPT
'JAVA > 포스팅' 카테고리의 다른 글
자바 컬렉션 프레임워크 Hashtable (0) | 2023.11.18 |
---|---|
자바 컬렉션 프레임워크 HashMap (0) | 2023.11.18 |
자바 컬렉션 프레임워크 HashSet (0) | 2023.11.18 |
자바 컬렉션 프레임워크 Comparable (0) | 2023.11.18 |
자바 컬렉션 프레임워크 Comparator (0) | 2023.11.18 |