Set

"Java Stuty"

Posted by Chungman on March 25, 2021

Set 예제

SetMain

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
package Java0325.Lecture14.generic;

import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
import java.util.TreeSet;
import java.util.concurrent.atomic.AtomicBoolean;

/*
 *  set : 순서(x), 중복(x)
 *  구현클래스 : HashSet, TreeSet
 *  
 *  주요메소드 
 *  -add() : 데이터 입력
 *  -remove() : 데이터 삭제
 *  -size() : 리스트의 전체 데이터 개수
 *  -clear() : 릿트의 전체 데이터 삭제
 *  -isEmpty() : 리스트가 비어있는지 채크
 *  -contains() : 특정데이터의 존재여부 판단
 *  -iterator() : Iterator 인터페이스 객체 반환
 */
public class SetMain {

	public static void main(String[] args) {
	
		Set<String> set = new TreeSet<>();		// TreeSet은 사전순으로 정렬돼서 나옴
		
		boolean bool = set.add("one");
		set.add("two");
		set.add("three");
		set.add("four");
		set.add("five");
		System.out.println("\"one\" 데이터 삽입여부 : " + (bool ? "성공" : "실패"));
		System.out.println(set.size());
		
		bool = set.add("one");
		System.out.println("\"one\" 데이터 삽입여부 : " + (bool ? "성공" : "실패"));
		System.out.println(set.size());
		
		/*
		 * set의 전체데이터 출력 방식
		 * 1. 1.5버번의 for문 이용
		 * 2. iterator()를 이용
		 * 3. toArray()를 이용
		 */
		
		System.out.println("< 1.5버전의 for문을 이용한 출력 >");
		for(String str : set) {
			System.out.println(str);
		}
		
		System.out.println("< iterator()를 이용한 출력 >");
		Iterator<String> ite = set.iterator();
		while(ite.hasNext()) {
			System.out.println(ite.next());
		}
		
		System.out.println("< toArray() 메소드를 이용한 출력 >");
		Object[] arr = set.toArray();
		System.out.println(Arrays.toString(arr));
		
		
		
	}

}