HOME > java > collections > hashset

Java - HashSet.add() 사용 방법 및 예제

By JS | 28 Oct 2019

HashSet의 add() 메소드는 인자로 전달된 아이템을 HashSet에 저장합니다.

HashSet.add()

HashSet에 인자로 전달된 아이템을 저장하고, HashSet에 존재하지 않는 아이템이라면 true, 존재하는 아이템이라면 false를 리턴합니다.

public boolean add(E e)

저장되는 아이템은 null이 허용되지만, 중복된 값은 허용되지 않습니다.(한번만 저장이 됩니다) 또한, 저장되는 순서는 보장되지 않기 때문에, 저장되는 순서가 저장하는 순서와 같을 것이라고 생각해서는 안됩니다.

HashSet.add() 예제

다음은 add() 메소드를 사용하는 예제입니다.

package collections;

import java.util.*;

public class HashSetExample {
    public static void main(String args[]) {
        // HashSet을 생성하고 아이템을 추가합니다
        Set<String> fruits = new HashSet<String>();
        fruits.add("apple");
        fruits.add("banana");
        fruits.add("kiwi");

        // 출력해보면, 저장된 순서가 저장한 순서와 다릅니다
        System.out.println("fruits: " + fruits);

        // null을 두번 add하고, 위에서 저장한 kiwi도 다시 add합니다
        // 리턴되는 값을 보면, 처음 등록하는 아이템은 true를,
        // 두번째 등록하는 값은 false를 리턴합니다
        System.out.println("add(null) -> success ? " + fruits.add(null));
        System.out.println("add(null) -> success ? " + fruits.add(null));
        System.out.println("add(kiwi) -> success ? " + fruits.add("kiwi"));

        // null은 저장이 되지만, 중복된 값은 한번만 저장이 됩니다.
        System.out.println("fruits: " + fruits);
    }
}

결과

fruits: [banana, apple, kiwi]
add(null) -> success ? true
add(null) -> success ? false
add(kiwi) -> success ? false
fruits: [banana, null, apple, kiwi]

참고