HashSet
HashSet은 Set인터페이스를 구현한 대표적인 컬렉션
HashSet은 저장순서를 유지하지않음으로 저장순서를 유지하려면 LinkedHashSet을 사용한다.
https://standout.tistory.com/1367
HashSet()
기본 생성자로, 초기 용량(capacity)이 16이고 기본 로드 팩터(load factor)가 0.75인 빈 HashSet을 생성합니다.
HashSet<String> set = new HashSet<>();
HashSet(Collection c)
주어진 컬렉션의 모든 요소를 포함하는 HashSet을 생성합니다.
ArrayList<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
HashSet<String> set = new HashSet<>(list);
HashSet(int initialCapacity)
주어진 초기 용량으로 빈 HashSet을 생성합니다.
HashSet<String> set = new HashSet<>(20);
HashSet(int initialCapacity, float loadFactor)
주어진 초기 용량과 로드 팩터로 빈 HashSet을 생성합니다.
HashSet<String> set = new HashSet<>(20, 0.5f);
boolean add(Object o)
지정된 요소를 이 HashSet에 추가합니다.
HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
boolean addAll(Collection c)
지정된 컬렉션의 모든 요소를 이 HashSet에 추가합니다.
HashSet<String> set = new HashSet<>();
ArrayList<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
set.addAll(list);
void clear()
이 HashSet에서 모든 요소를 제거합니다.
HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
set.clear();
Object clone()
이 메소드는 호출된 객체의 얕은 복사를 만들어 반환합니다. 즉, 새로운 객체를 만들고 원본 객체의 내용을 복사합니다. 하지만 내부 객체는 복사하지 않고 원본과 동일한 참조를 유지합니다.
HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
HashSet<String> copySet = (HashSet<String>) set.clone();
System.out.println(copySet); // [banana, apple]
boolean contains(Object o)
지정된 요소가 이 HashSet에 포함되어 있는지 여부를 반환합니다.
HashSet<String> set = new HashSet<>();
set.add("apple");
System.out.println(set.contains("apple")); // true
boolean containsAll(Collection c)
이 HashSet이 지정된 컬렉션의 모든 요소를 포함하고 있는지 여부를 반환합니다.
HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
ArrayList<String> list = new ArrayList<>();
list.add("apple");
System.out.println(set.containsAll(list)); // true
boolean isEmpty()
이 HashSet이 비어 있는지 여부를 반환합니다.
HashSet<String> set = new HashSet<>();
System.out.println(set.isEmpty()); // true
Iterator iterator()
이 HashSet에 있는 요소를 반복하는 Iterator를 반환합니다.
HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
boolean remove(Object o)
이 HashSet에서 지정된 요소를 제거합니다.
HashSet<String> set = new HashSet<>();
set.add("apple");
System.out.println(set.remove("apple")); // true
boolean removeAll (Collection c)
이 HashSet에서 지정된 컬렉션에 포함된 모든 요소를 제거합니다.
HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
ArrayList<String> list = new ArrayList<>();
list.add("apple");
System.out.println(set.removeAll(list)); // true
boolean retainAll (Collection c)
이 HashSet에서 지정된 컬렉션에 포함된 요소만을 유지하고 나머지 요소는 제거합니다.
HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
ArrayList<String> list = new ArrayList<>();
list.add("apple");
System.out.println(set.retainAll(list)); // true
int size()
이 HashSet에 포함된 요소의 수를 반환합니다.
HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
System.out.println(set.size()); // 2
Object[] toArray()
이 HashSet에 포함된 요소를 포함하는 배열을 반환합니다.
HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
Object[] array = set.toArray();
System.out.println(Arrays.toString(array)); // [banana, apple]
Object[] toArray(Object[] a)
이 HashSet에 포함된 요소를 지정된 배열에 복사하여 반환합니다.
HashSet<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
String[] array = new String[set.size()];
set.toArray(array);
System.out.println(Arrays.toString(array)); // [banana, apple]
'JAVA' 카테고리의 다른 글
HashTable 보다 새버전인 HashMap (0) | 2024.02.06 |
---|---|
검색트리의 자료구조 형태로 데이터를 저장하는 컬렉션 클래스, TreeSet (0) | 2024.02.06 |
다양한 정렬 요구에 대응하다, Compartator와 Comparable 인터페이스 (0) | 2024.02.06 |
배열을 다루는데 유용한 메서드, Arrays (0) | 2024.02.05 |
컬렉션에 저장된 요소를 접근하는데 사용되는 인터페이스 Iterator, Listterator, Enumeration (0) | 2024.02.05 |