[java] 자바 힙에서 중복된 값 처리 방법

자바 프로그램을 개발하다보면 때로는 중복된 값을 처리해야 할 때가 있습니다. 특히 자료를 저장하는 힙(Heap)에서 중복된 값을 처리하는 방법은 매우 중요합니다. 이번 포스트에서는 자바 힙에서 중복된 값 처리하는 방법에 대해 알아보겠습니다.

HashSet을 사용한 중복 제거

가장 일반적인 방법은 HashSet을 사용하여 중복된 값을 제거하는 것입니다. HashSet은 Set 인터페이스를 구현한 컬렉션으로, 중복된 값을 허용하지 않습니다.

import java.util.HashSet;

public class DuplicateRemoval {
    public static void main(String[] args) {
        HashSet<String> set = new HashSet<>();
        String[] array = {"A", "B", "C", "A", "B"};
        for (String value : array) {
            set.add(value);
        }
        System.out.println(set); // 출력: [A, B, C]
    }
}

위의 예시에서 HashSet을 사용하여 중복된 값을 제거한 결과를 확인할 수 있습니다.

Stream을 이용한 중복 제거

Java 8부터는 Stream을 활용하여 중복된 값을 제거할 수 있는 방법이 제공됩니다.

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

public class DuplicateRemoval {
    public static void main(String[] args) {
        String[] array = {"A", "B", "C", "A", "B"};
        String[] result = Arrays.stream(array)
                                .distinct()
                                .toArray(String[]::new);
        System.out.println(Arrays.toString(result)); // 출력: [A, B, C]
    }
}

Stream을 사용하여 중복된 값을 제거하고, 배열로 변환한 결과를 확인할 수 있습니다.

Conclusion

자바 힙에서 중복된 값을 처리하는 방법으로는 HashSet을 사용하는 방법과 Stream을 이용하는 방법이 있습니다. 각각의 방법은 상황에 따라 적합한 방법을 선택하여 중복된 값을 처리할 수 있습니다.

참고 문헌: