Java Usuń duplikaty z listy

Ten post zawiera przykłady pokazujące, jak usunąć zduplikowane elementy z ArrayList w Javie.



Usuń zduplikowane ciągi z ArrayList

Ponieważ Set nie może przechowywać zduplikowanych elementów, możemy utworzyć wystąpienie Set obiekt przekazywany w ArrayList z duplikatami jako parametrem.

Na przykład:


import java.util.ArrayList; import java.util.LinkedHashSet; import java.util.Set; public class RemoveDuplicatesFromArrayList {
public static void main(String[] args) {
ArrayList pets = new ArrayList();

pets.add('cat');
pets.add('dog');
pets.add('cat');
pets.add('hamster');

System.out.println(pets);

Set hashSet = new LinkedHashSet(pets);
ArrayList removedDuplicates = new ArrayList(hashSet);

System.out.println(removedDuplicates);
} }

Wynik:

[cat, dog, cat, hamster] [cat, dog, hamster]

Związane z:


Usuń zduplikowane liczby całkowite z listy

Podobnie, możemy użyć tej samej metodologii do usunięcia zduplikowanych liczb całkowitych.

import java.util.*; public class RemoveDuplicatesFromArrayList {
public static void main(String[] args) {
List numbers = Arrays.asList(1,2,2,2,3,5);

System.out.println(numbers);

Set hashSet = new LinkedHashSet(numbers);
ArrayList removedDuplicates = new ArrayList(hashSet);

System.out.println(removedDuplicates);
} }

Wynik:

[1, 2, 2, 2, 3, 5] [1, 2, 3, 5]

Usuń duplikaty z listy za pomocą Java 8 Lambdas

import java.util.*; import java.util.stream.Collectors; public class RemoveDuplicatesFromArrayList {
public static void main(String[] args) {
List numbers = Arrays.asList(1,2,2,2,3,5);

System.out.println(numbers);

List removedDuplicates = numbers.stream()


.distinct()


.collect(Collectors.toList());

System.out.println(removedDuplicates);
} }

Wynik:

[1, 2, 2, 2, 3, 5] [1, 2, 3, 5]