<aside> ☑️ 참고 블로그

  1. HashSet - 메소드 종류 및 사용법

  2. Oracle - 공식문서 HashSet

</aside>

→ 중복을 허용하지 않기때문에 중복을 제거해준다. (집합이라고 생각하면 될 것)

[HashSet의 method Listing]

HashSet.add(Object o) HashSet에 요소를 추가한다.
HashSet.remove(Object o) HashSet에서 특정 요소를 제거한다.
HashSet.removeAll(List<Object o>) List<T> 안에 있는 모든 요소를 제거
HashSet.removeIf()
HashSet.clear() HashSet 전체를 비운다
HashSet.contains(Object o) HashSet이 특정요소가 들어가 있는지 확인
for를 이용하여 요소 조회 향상된 for문으로 돌릴수 있다
HashSet.isEmpty() HashSet이 비어있는지를 확인 가능
HashSet.size() HashSet의 사이즈를 볼수 있다.

[HashSet 다루기]

package HashSet;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;

public class HashSetIterator {
		
	
	public static void main(String[] args) {
		
		String[] stringArray = {"A", "B", "C", "A", "E", "C","F","H","Y","U","Q"};
		
		HashSet<String> hashSet = new HashSet<String>();	
		
		for(int i=0; i<stringArray.length; i++) {
			hashSet.add(stringArray[i]);
		}
		
		//HashSet size 출력 (Collection에 있는 method)
		System.out.println(hashSet.size());
		
		
		//순회할때 for loop사용도 가능
		for(String str: hashSet) {
			System.out.print(str + " ");
		}
		
		
		//가설 - Collection Framework의 자료구조들은 System.out.println []구조로 볼수 있다?
		System.out.println(hashSet.toString()); // HashSet도 그냥 print가 되네?
		
		//HashSet remove - 요소 제거 
		hashSet.remove("C");
		System.out.println(hashSet.toString());
		
		
		//HashSet contains (포함되어 있는지?)
		boolean yn = hashSet.contains("A");
		System.out.println(yn);
		
		
		//HashSet이 비었는지 확인 .isEmpty()
		yn = hashSet.isEmpty();
		System.out.println(yn);
		
		
		//HashSet에서 List로 받아와서 한번에 지우는것
		List<String> removeList = new ArrayList<String>(Arrays.asList("E", "F", "H")); //E, F, H를 한꺼번에 없애자
		System.out.println(hashSet);
		
	}

}