이전 글에서 Set에 대해서 알아보았다. Set은 집합을 구현할 때 매우 유용하게 사용된다
ex1) 교집합 - retainAll();
//배열을 set으로 바꿔주는 과정
HashSet<Integer> s1 = new HashSet<>(Arrays.asList(1,10,100,20,30);
HashSet<Integer> s2 = new HashSet<>(Arrays.asList(10, 20, 30, 40, 50, 60));
HashSet<Integer> inter = new HashSet<>(s1);
inter.retainAll(s2);
///10,20,30
인스턴스를 통해 retainAll 메소드를 사용한 이유는, 그렇지 않으면 s1의 값이 변경되기 때문이다 .
ex2) 합집합 - addAll();
//배열을 set으로 바꿔주는 과정
HashSet<Integer> s1 = new HashSet<>(Arrays.asList(1,10,100,20,30);
HashSet<Integer> s2 = new HashSet<>(Arrays.asList(10, 20, 30, 40, 50, 60));
HashSet<Integer> uni = new HashSet<>(s1);
inter.addAll(s2);
///1,10,100,20,30,40,50,60
//HashSet은 고유한 순서가 없다
ex3)차집합 - removeAll();
//배열을 set으로 바꿔주는 과정
HashSet<Integer> s1 = new HashSet<>(Arrays.asList(1,10,100,20,30);
HashSet<Integer> s2 = new HashSet<>(Arrays.asList(10, 20, 30, 40, 50, 60));
HashSet<Integer> inter = new HashSet<>(s1);
inter.removeAll(s2);
//1,100
'JAVA' 카테고리의 다른 글
JAVA(2022.06.19) - 특정문자를 포함 및 대체 (0) | 2022.06.19 |
---|---|
JAVA(2022.06.17) - 문자열을 정렬하기 (0) | 2022.06.17 |
JAVA(2022.06.15) - Set (0) | 2022.06.15 |
JAVA(2022.06.14) - Map (0) | 2022.06.14 |
JAVA(2022.06.13) - Casting(형변환) (0) | 2022.06.13 |