이 게시물은 Java의 ArrayList에서 중복 항목을 제거하는 방법을 보여주는 예제를 제공합니다.
ArrayList에서 중복 문자열 제거
Set
이후 중복 요소를 보유할 수 없습니다. Set
를 인스턴스화할 수 있습니다. 매개변수로 중복을 사용하여 ArrayList에 개체를 전달합니다.
예:
import java.util.ArrayList;
import java.util.LinkedHashSet;
import java.util.Set;
public class RemoveDuplicatesFromArrayList {
public static void main(String[] args) {
ArrayList<String> pets = new ArrayList<>();
pets.add("cat");
pets.add("dog");
pets.add("cat");
pets.add("hamster");
System.out.println(pets);
Set<String> hashSet = new LinkedHashSet(pets);
ArrayList<String> removedDuplicates = new ArrayList(hashSet);
System.out.println(removedDuplicates);
}
}
출력:
[cat, dog, cat, hamster]
[cat, dog, hamster]
관련:
- 자바에서 두 개의 ArrayList를 비교하는 방법
- 자바에서 ArrayList를 반복하는 방법
- Java에서 목록을 배열로 변환하는 방법
목록에서 중복 정수 제거
마찬가지로 동일한 방법을 사용하여 중복 정수를 제거할 수 있습니다.
import java.util.*;
public class RemoveDuplicatesFromArrayList {
public static void main(String[] args) {
List<Integer> numbers = Arrays.asList(1,2,2,2,3,5);
System.out.println(numbers);
Set<Integer> hashSet = new LinkedHashSet(numbers);
ArrayList<Integer> removedDuplicates = new ArrayList(hashSet);
System.out.println(removedDuplicates);
}
}
출력:
[1, 2, 2, 2, 3, 5]
[1, 2, 3, 5]
Java 8 Lambda를 사용하여 목록에서 중복 제거
import java.util.*;
import java.util.stream.Collectors;
public class RemoveDuplicatesFromArrayList {
public static void main(String[] args) {
List<Integer> numbers = Arrays.asList(1,2,2,2,3,5);
System.out.println(numbers);
List<Integer> removedDuplicates = numbers.stream()
.distinct()
.collect(Collectors.toList());
System.out.println(removedDuplicates);
}
}
출력:
[1, 2, 2, 2, 3, 5]
[1, 2, 3, 5]