본문 바로가기

JAVA

JAVA(2022.06.16) - Set 으로 집합 구현하기

이전 글에서 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