SeouliteLab

[Java/자바] 배열을 Set(HashSet)으로 변환하기 본문

프로그래밍

[Java/자바] 배열을 Set(HashSet)으로 변환하기

Seoulite Lab 2024. 3. 7. 08:59

Java에서 배열을 Set으로 변환하는 작업은 데이터를 중복 없이 저장하거나, 빠른 검색을 위해 자주 사용됩니다. 여러 방법을 통해 배열을 HashSet으로 변환하는 예제를 살펴보겠습니다.

예제 1: 배열을 HashSet으로 직접 변환

import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;

public class ArrayToHashSetExample {
    public static void main(String[] args) {
        String[] array = {"apple", "banana", "orange", "apple", "pear"};
        
        Set<String> set = new HashSet<>(Arrays.asList(array));
        
        System.out.println("HashSet: " + set);
    }
}

위 예제는 배열을 HashSet으로 직접 변환하는 방법입니다. Arrays.asList()를 사용하여 배열을 List로 변환한 후, HashSet 생성자에 해당 List를 전달하여 HashSet을 생성합니다.

예제 2: 반복문을 이용한 배열을 HashSet으로 변환

import java.util.HashSet;
import java.util.Set;

public class ArrayToHashSetExample {
    public static void main(String[] args) {
        String[] array = {"apple", "banana", "orange", "apple", "pear"};
        
        Set<String> set = new HashSet<>();
        for (String element : array) {
            set.add(element);
        }
        
        System.out.println("HashSet: " + set);
    }
}

반복문을 사용하여 배열의 각 요소를 HashSet에 추가하여 배열을 HashSet으로 변환하는 방법입니다.

예제 3: Stream API를 이용한 배열을 HashSet으로 변환 (Java 8+)

import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
import java.util.stream.Collectors;

public class ArrayToHashSetExample {
    public static void main(String[] args) {
        String[] array = {"apple", "banana", "orange", "apple", "pear"};
        
        Set<String> set = Arrays.stream(array)
                                   .collect(Collectors.toCollection(HashSet::new));
        
        System.out.println("HashSet: " + set);
    }
}

Java 8부터는 Stream API를 사용하여 배열을 HashSet으로 변환할 수 있습니다. stream() 메서드를 호출하여 스트림을 생성한 후, collect() 메서드를 사용하여 HashSet으로 수집합니다.

예제 4: Apache Commons Collections 라이브러리를 이용한 배열을 HashSet으로 변환

Apache Commons Collections 라이브러리의 CollectionUtils 클래스를 사용하여 배열을 HashSet으로 변환하는 방법입니다. 이를 위해 프로젝트에 commons-collections 라이브러리를 추가해야 합니다.

import org.apache.commons.collections4.CollectionUtils;

import java.util.HashSet;
import java.util.Set;

public class ArrayToHashSetExample {
    public static void main(String[] args) {
        String[] array = {"apple", "banana", "orange", "apple", "pear"};
        
        Set<String> set = new HashSet<>(CollectionUtils.addAll(new HashSet<>(), array));
        
        System.out.println("HashSet: " + set);
    }
}

예제 5: Google Guava 라이브러리를 이용한 배열을 HashSet으로 변환

Google Guava 라이브러리의 Sets 클래스를 사용하여 배열을 HashSet으로 변환하는 방법입니다. 이를 위해 프로젝트에 guava 라이브러리를 추가해야 합니다.

import com.google.common.collect.Sets;

import java.util.HashSet;
import java.util.Set;

public class ArrayToHashSetExample {
    public static void main(String[] args) {
        String[] array = {"apple", "banana", "orange", "apple", "pear"};
        
        Set<String> set = Sets.newHashSet(array);
        
        System.out.println("HashSet: " + set);
    }
}