package ch01;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Random;
import java.util.Set;
public class DataStructureTest1 {
public static void main(String[] args) {
HashSet<Integer> set1 = new HashSet<>(); //데이터 잡을 구조만듬(set구조)
set1.add(1);
set1.add(1);//중복 값(중복을 덮어쓴다.)
set1.add(2);
set1.add(3);//중복 값
set1.add(3);
set1.add(3);
//사이즈 확인
System.out.println(set1.size()); // 3으로 출력
set1.remove(1);
System.out.println(set1); // [2, 3]
// set1.clear();
// System.out.println(set1);
System.out.println(set1.isEmpty()); // 비어있는
// for문 사용법
for (int i = 0; i < set1.size(); i++) { //()괄호있는건 메서드
System.out.println("set1 값 : 확인 " + i);
}
for (Integer integer : set1) {
System.out.println(integer);
}//for each 로 사용가능
// while 사용방법
//요소 순회(반복자) 컬렉션 프레임워크에 저장된 요소를 하나씩 차례로 참조 하는것
//하나씩 꺼내서 반복할 때 사용
Iterator iter = set1.iterator();
while(iter.hasNext()) {
System.out.println("값 확인: " + iter.next());
}
HashSet<Integer> set2 = new HashSet<Integer>();
System.out.println("------------------");
set2.add(getRandomNumber());
set2.add(getRandomNumber());
set2.add(getRandomNumber());
set2.add(getRandomNumber());
set2.add(getRandomNumber());
set2.add(getRandomNumber());
System.out.println(set2); //중복된값이 있다면 중복된값이 뜨지않음
}
public static int getRandomNumber() {
Random random = new Random();
int value = random.nextInt(45) +1;
return value;
}
}