-
자바[JAVA] - treeSet(), headSet(), tailSet(), subSet()Java/자바의정석 2023. 3. 13. 16:36반응형
treeSet()의 메서드기능
SortedSet subSet(Object fromElement, Object toElement) 범위검색의 결과를 반환한다.(끝범위는 포함x) SortedSet headSet(Object toElement) 지정된 객체보다 작은 값의 객체들을 반환 SortedSet tailSet(Object fromElement) 지정된 객체보다 큰 값의 객체들을 반환 아래의 코드를 보며 한번 살펴보자. 해당 코드는 자바의정석 예제이다.
import java.util.TreeSet; class Ex11_15 { public static void main(String[] args) { TreeSet set = new TreeSet(); int[] score = {80, 95, 50, 35, 45, 65, 10, 100}; for(int i=0; i < score.length; i++) set.add(new Integer(score[i])); System.out.println("50보다 작은 값 :" + set.headSet(new Integer(50))); System.out.println("50보다 큰 값 :" + set.tailSet(new Integer(50))); System.out.println("40과 80사이의 값: "+ set.subSet(40,80)); } }
============실행결과==============
50보다 작은 값 :[10, 35, 45]
50보다 큰 값 :[50, 65, 80, 95, 100]
40과 80사이의 값: [45, 50, 65]
set에 add()메서드를 통해 담는다면 탐색트리이기때문에
[10, 35, 45, 50, 65, 80, 95, 100] 와같이 정렬이 되어나온다.
headSet()
System.out.println("50보다 작은 값 :" + set.headSet(new Integer(50)));
headSet의 경우 지정된 객체(50)보다 작은 값들을 반환한다.
tailSet()
System.out.println("50보다 큰 값 :" + set.tailSet(new Integer(50)));
tailSet의 경우 지정된 객체(50)보다 큰 값들을 반환한다.
subSet()
System.out.println("40과 80사이의 값: "+ set.subSet(40,80));
subSet의 경우 from~to 형식으로 40과 80사이의 값을 반환한다.
to에 해당하는 80은 범위에서 제외
반응형'Java > 자바의정석' 카테고리의 다른 글
자바[JAVA] - HashMap()개념 및 여러가지 메서드 (0) 2023.03.09 자바[JAVA] - treeset()개념 및 여러가지 기능들 (0) 2023.03.09 [JAVA] 자바 - 제네릭스(generics)란? (0) 2023.03.08 자바[JAVA] - Comparable과 Comparator의 이해 (0) 2023.02.28 자바 [JAVA] - HashSet개념 및 활용 (0) 2023.02.27