반응형
package dayday15;
/*
* <Set Interface>
* 1. 특징 : 순서가 없다, 중복 허용,
* 2. 구현클래스 종류
* 1) TreeSet : 빠른 검색, 자동 정렬
* 2) HashSet : 검색이 더 빠름 , 자동정렬이 없다.
* 원소를기준에 따라 모아둠.. 기준을 검색 후 원소를 찾기 때문에 더 빠름
*
*/
import java.util.Set; //인터페이스
import java.util.TreeSet; //클래스
import java.util.HashSet;
import java.util.Iterator;; //클래스
public class test03 {
public static void main(String[] args) {
Set s1 = new TreeSet();
Set s2 = new HashSet();
//1. 원소 추가
//set도 마찬가지로 원소 추가할 때 add사용한다. 다만 set은 index가 없다.
s1.add(1);
s1.add(1000);
s1.add(2);
s1.add(7347);
//s1.add("abc");
System.out.println(s1); //Error!! 자동정렬하다보니까 int와 String이 겹침.
//주의점 : 같은 자료형만 사용해야함!!
//output : [1, 2, 1000, 7347] 오름차순
s2.add(1);
s2.add(1000);
s2.add("abcccc");
s2.add(300);
s2.add("abc");
System.out.println(s2); //NoError
//output : [1, abc, 1000, abcccc, 300]
//랜덤하게 저장된다? 그게 더 일일텐데..?
//2. 원소삭제
s1.remove(2);
System.out.println(s1); //[1, 1000, 7347]
//3. 확장for문 가능
for(Object o : s1){
System.out.println(s1);
}
//4. Iterator(반복수행자) //다른 컬렉션에서도 다 쓰임.
Iterator it = s1.iterator();
System.out.println(it.next()); //1
System.out.println(it.next()); //1000
System.out.println(it.next()); //7347
//System.out.println(it.next()); //NoSuchElementException
//원소 갯수 모른다?
it = s1.iterator(); //처음으로 다시 돌림
while(it.hasNext()){//다음것이 있는지 확인!
System.out.println(it.next());
}
}
}
반응형
'IT > Programming' 카테고리의 다른 글
[JAVA] Collection Framework 사용 예제 (0) | 2023.04.20 |
---|---|
[JAVA] LinkedList 사용 예제 (0) | 2023.04.20 |
[JAVA] Comparable, CompareTo 사용 예제 (0) | 2023.04.20 |
[JAVA] Map Interface 사용 예제 (0) | 2023.04.20 |
[JAVA] ArrayList를 활용하여 사용자정보입력 사용 예제 (0) | 2023.04.20 |