[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
을 이용하는 방법이 있습니다. 각각의 방법은 상황에 따라 적합한 방법을 선택하여 중복된 값을 처리할 수 있습니다.
참고 문헌:
- Oracle Documentation: https://docs.oracle.com/en/java/javase/
- Baeldung: https://www.baeldung.com/java-8-streams