<aside> ☑️ 참고 블로그
</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);
}
}