English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Completa guida di esempio Java
In questo esempio, impareremo come eliminare gli elementi duplicati da ArrayList utilizzando Java.
Per comprendere questo esempio, dovresti conoscere quanto segueProgrammazione JavaArgomento:
import java.util.ArrayList; import java.util.Arrays; import java.util.LinkedHashSet; import java.util.Set; class Main { public static void main(String[] args) { //Creare un ArrayList da un array //Usare il metodo asList() della classe Array ArrayList<Integer> numbers = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 1, 3)); System.out.println("ArrayList con elementi duplicati: " + numbers); //Convertire l'ArrayList in una Set Set<Integer> set = new LinkedHashSet<>(); set.addAll(numbers); //Eliminare tutti gli elementi dell'ArrayList numbers.clear(); //Aggiungere gli elementi dalla raccolta set all'ArrayList numbers.addAll(set); System.out.println("ArrayList senza elementi duplicati: " + numbers); } }
Risultato di output
ArrayList con elementi duplicati: [1, 2, 3, 4, 1, 3] ArrayList senza elementi duplicati: [1, 2, 3, 4]
L'arraylist contiene elementi duplicati.
Per eliminare gli elementi duplicati dall'ArrayList, dobbiamo:
Aggiungere tutti gli elementi dell'ArrayList alla raccolta set
Usare il metodo clear() per svuotare l'ArrayList
Aggiungere tutti gli elementi della raccolta set all'ArrayList
In questo esempio, utilizziamo LinkedHashSet per creare la raccolta. Questo perché elimina gli elementi duplicati mantenendo l'ordine di inserimento. Per ulteriori informazioni, visitareJava LinkedHashSet.
import java.util.ArrayList; import java.util.Arrays; import java.util.stream.Collectors; import java.util.stream.Stream; class Main { public static void main(String[] args) { //Creare un ArrayList da un array //Usare il metodo asList() della classe Array ArrayList<Integer> numbers = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 1, 3)); System.out.println("ArrayList con elementi duplicati: " + numbers); //Creare uno stream da una ArrayList Stream<Integer> stream = numbers.stream(); //Chiamare il metodo distinct() di Stream //Eliminare gli elementi duplicati stream = stream.distinct(); //Convertire lo stream in ArrayList numbers = (ArrayList<Integer>)stream.collect(Collectors.toList()); System.out.println("ArrayList senza elementi duplicati: " + numbers); } }
Risultato di output
ArrayList con elementi duplicati: [1, 2, 3, 4, 1, 3] ArrayList senza elementi duplicati: [1, 2, 3, 4]
L'arraylist contiene elementi duplicati.
In questo esempio, abbiamo creato un arraylist chiamato numbers.StreamLa classe rimuove elementi duplicati dall'arraylist.
Numbers.stream() - Crea un flusso da arraylist
stream.distinct() - Elimina elementi duplicati
stream.collect(Collectors.toList()) - Restituisci lista dal flusso
In questo esempio, utilizziamo la conversione di tipo per convertire la lista restituita in arraylist.