logo

Come confrontare due ArrayList in Java

Esistono i seguenti modi per confrontare due ArrayList in Java:

  • Giava equivale() metodo
  • Giava Rimuovi tutto() metodo
  • Giava conservaTutto() metodo
  • Giava ArrayList.contains() metodo
  • Giava contenutoUguale() metodo
  • Giava Flusso interfaccia

Metodo Java equals()

Giava equivale() metodo di Elenco l'interfaccia confronta l'oggetto specificato con l'elenco per verificarne l'uguaglianza. Ha la precedenza su equivale() metodo di Oggetto classe.

Sintassi

moltiplicazione di matrici in c
 boolean equals(Object o) 

Questo metodo accetta un oggetto da confrontare per uguaglianza con l'elenco. Ritorna VERO se l'oggetto specificato è uguale alla lista, altrimenti restituisce falso .

Esempio

Nell'esempio seguente, abbiamo creato due ArrayList primaLista E secondaLista . Confrontando entrambi gli elenchi utilizzando equivale() metodo, restituisce true. Abbiamo aggiunto un altro elemento nel file secondaLista per creare una differenza tra firstList e secondList. Ora, se eseguiamo il confronto, ritorna falso .

 import java.util.*; public class ComapreArraylistExample1 { public static void main(String args[]) { //first array list ArrayList firstList=new ArrayList(); //adds elements to the arraylist firstList.add('Apple'); firstList.add('Pears'); firstList.add('Guava'); firstList.add('Mango'); System.out.println(firstList); //second array list List secondList=new ArrayList(); //adds elements to the arraylist secondList.add('Apple'); secondList.add('Pears'); secondList.add('Guava'); secondList.add('Mango'); System.out.println(secondList); //comparing both lists boolean boolval = firstList.equals(secondList); //returns true because lists are equal System.out.println(boolval); //adding another element in the second list secondList.add('Papaya'); //again comparing both lists boolean bool = firstList.equals(secondList); //returns false because lists are not equal System.out.println(bool); } } 

Produzione

 [Apple, Pears, Guava, Mango] [Apple, Pears, Guava, Mango] true false 

Metodo JavaremoveAll() (ricerca dell'elemento mancante)

Giava Rimuovi tutto() metodo di Lista di array class viene utilizzata per rimuovere dall'elenco tutti gli elementi contenuti nella raccolta specificata. Ha la precedenza su Rimuovi tutto() metodo di Collezione astratta classe.

Sintassi

 public boolean removeAll(Collection c) 

Questo metodo accetta Collezione come parametro contenente elementi da rimuovere da questo elenco. Ritorna VERO se questo elenco è cambiato a seguito della chiamata.

Esempio

Nell'esempio seguente, abbiamo creato due ArrayList primaLista E secondaLista . IL Rimuovi tutto() Il metodo rimuove tutti gli elementi della firstList perché gli stessi elementi sono presenti anche nella secondList, tranne Papaia . COSÌ, Papaia è l'elemento mancante in primaLista . Quindi, ritorna Papaia . Il metodo restituisce un elenco vuoto [] se entrambi gli elenchi hanno gli stessi elementi.

 import java.util.*; public class ComapreArraylistExample2 { public static void main(String args[]) { //first arraylist ArrayList firstList=new ArrayList(); //adds elements to the array list firstList.add('Apple'); firstList.add('Pears'); firstList.add('Guava'); firstList.add('Peach'); //second array list ArrayList secondList=new ArrayList(); //adds elements to the array list secondList.add('Apple'); secondList.add('Pears'); secondList.add('Papaya'); secondList.add('Peach'); //removes all elements from the first list //returns empty list if all the elements of first list match with elements of second list secondList.removeAll(firstList); //prints the element of second list which does not match with the element of the first list System.out.println(secondList); } } 

Produzione

 [Papaya] 

Vediamo un altro esempio del metodoremoveAll() che restituisce gli elementi da firstList che non sono presenti è secondList.

Esempio

 import java.util.*; public class ComapreArraylistExample3 { public static void main(String args[]) { //first array list ArrayList firstList=new ArrayList(Arrays.asList(12, 4, 67, 90, 34)); System.out.println('First array list: '); System.out.println(firstList); //second array list List secondList=new ArrayList(Arrays.asList(12, 4, 67, 0, 34)); System.out.println('Second array list: '); System.out.println(secondList); //returns the common elements in both list firstList.removeAll(secondList); System.out.println('Un-common element of the first list: '); System.out.println(firstList); } } 

Produzione

 First array list: [12, 4, 67, 90, 34] Second array list: [12, 4, 67, 0, 34] Un-common element of the first list: [90] 

Metodo Java keepAll() (restituisce elementi comuni in entrambi gli elenchi)

Giava conservaTutto() metodo di Lista di array La classe conserva solo gli elementi dell'elenco contenuti anche in un altro elenco. Ha la precedenza su conservaTutto() metodo di Collezione Abstarct classe.

leggi di equivalenza

Sintassi

 public boolean retainAll(Collection c) 

Questo metodo accetta a Collezione come parametro che contiene gli elementi da conservare nell'elenco. Ritorna VERO se questo elenco è cambiato a seguito della chiamata.

Esempio

In questo esempio, abbiamo creato due ArrayList primaLista E secondaLista utilizzando il comeLista() metodo del Array classe. Il metodo asList() restituisce una visualizzazione elenco dell'array specificato.

 import java.util.*; public class ComapreArraylistExample4 { public static void main(String args[]) { //first arraylist ArrayList firstList=new ArrayList(Arrays.asList('M', 'W', 'J', 'K', 'T')); System.out.println('First arraylist: '); System.out.println(firstList); //second arraylist List secondList=new ArrayList(Arrays.asList('M', 'W', 'E', 'K', 'T')); System.out.println('Second arraylist: '); System.out.println(secondList); //returns the common elements in both list secondList.retainAll(firstList); System.out.println('Common elements in both list: '); System.out.println(secondList); } } 

Produzione

 First arraylist: [M, W, J, K, T] Second arraylist: [M, W, E, K, T] Common elements in both list: [M, W, K, T] 

Metodo Java ArrayList.contains()

Giava ArrayList.contains() Il metodo viene utilizzato per confrontare due elementi di diversi ArrayList. Giava ArrayList.contains() il metodo sovrascrive il metodo contiene() metodo di Collezione astratta classe.

Sintassi

 public boolean contains(Object o) 

Questo metodo analizza un elemento di cui si desidera verificare la presenza nell'elenco. Ritorna VERO se l'elemento corrisponde, altrimenti restituisce falso .

Esempio

In questo esempio, abbiamo creato due ArrayList primaLista E secondaLista Di Corda tipo. Abbiamo confrontato questi ArrayList utilizzando contiene() metodo. Se gli elementi di firstList corrispondono agli elementi di secondList, restituisce e memorizza questo valore in terzaLista . Allo stesso modo, se l'elemento non corrisponde, ritorna NO .

 import java.util.ArrayList; import java.util.Arrays; public class ComapreArraylistExample5 { public static void main(String [] args) { //first arraylist ArrayList firstList= new ArrayList(Arrays.asList('Good', 'Morning', 'Students')); //second arraylist ArrayList secondList= new ArrayList(Arrays.asList('Good', 'Night', 'frineds')); //storing the comparison output in thirdList ArrayList thirdList= new ArrayList(); //iterator using for-each loop for(String tempList : firstList) //tempList is a variable thirdList.add(secondList.contains(tempList) ? 'Yes' : 'No'); System.out.println(thirdList); } } 

Produzione

 [Yes, No, No] 

Metodo Java contentEquals()

Giava contenutoUguale() metodo confronta il Corda con il StringBuffer e restituisce a booleano valore. Appartiene a Corda classe.

Sintassi

 public boolean contentEquals(StringBuffer sb) 

Questo metodo accetta StringBuffer come parametro da confrontare con String. Ritorna VERO se la String rappresenta la stessa sequenza di caratteri dello StringBuffer specificato, altrimenti restituisce falso .

Esempio

In questo esempio, abbiamo creato due ArrayList primaLista E secondaLista Di Corda tipo. Abbiamo creato un metodo statico confrontaLista() che analizza due ArrayList ls1 E ls2 come argomento e restituisce a booleano valore. Il metodo converte un elenco in Corda . IL contenutoUguale() Il metodo confronta la String con lo StringBuffer specificato.

Abbiamo aggiunto un altro elemento nel secondList per creare la differenza tra entrambi gli elenchi e richiamare nuovamente il file confrontaLista() metodo, che restituisce falso .

 import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class ComapreArraylistExample6 { //defining method public static boolean compareList(ArrayList ls1, ArrayList ls2) { //converts List into String and checks string are equal or not return ls1.toString().contentEquals(ls2.toString())?true:false; } public static void main(String[] args) { ArrayList firstList = new ArrayList(Arrays.asList('Java', 'Python', 'Ruby', 'Go')); ArrayList secondList = new ArrayList(Arrays.asList('Java', 'Python', 'Ruby', 'Go')); System.out.println('When Lists are same: '+compareList(firstList, secondList)); //adding another element to the secondList secondList.add('C++'); //output after adding different element System.out.println('When Lists are not same: '+compareList(firstList, secondList)); } } 

Produzione

 When Lists are same: true When Lists are not same: false 

Interfaccia flusso Java

Giava Flusso è un'interfaccia. Appartiene a java.util pacchetto. Fornisce un filtro() metodo per filtrare gli elementi del flusso sulla base di determinati elementi. È un intermedio processi.

Sintassi

 Stream filter(Predicate predicate) 

Questo metodo accetta Predicato (interfaccia funzionale) come argomento e restituisce un nuovo flusso di elementi risultanti.

taglio delle stringhe javascript

metodo Collect()

Un altro metodo utilizzato nell'esempio seguente è il raccogliere() metodo di Flusso interfaccia.

Esegue un'operazione di riduzione mutabile sugli elementi di questo flusso utilizzando un Collector. Il Collector incapsula le funzioni utilizzate come argomenti da raccogliere (Supplier, BiConsumer, BiConsumer). Permette di riutilizzare delle strategie di riscossione e composizione delle operazioni di riscossione. È un terminale operazione.

Sintassi

 R collect(Collector collector) 

Metodo Collectors.toList()

IL elencare() è un metodo statico di Collezionisti classe. Appartiene a java.util.Stream.Collectors classe.

Sintassi

 public static Collector<t, ?, list> toList() </t,>

Dove T è il tipo di elementi. Restituisce a Collettore che raccoglie tutti gli elementi di input in una Lista, in un ordine di incontro (non ordinato).

Esempio

Nell'esempio seguente, abbiamo creato due ArrayList primaLista E secondaLista di tipo Stringa. IL filtro() Il metodo restituisce un elenco di elementi comuni presenti in entrambi gli elenchi.

 import java.util.*; public class CompareArrayListExample7 { public static void main(String[] args) { ArrayList firstList = new ArrayList(Arrays.asList(&apos;Java&apos;, &apos;Python&apos;, &apos;Ruby&apos;, &apos;Go&apos;)); System.out.println(&apos;First List: &apos;+firstList); ArrayList secondList = new ArrayList(Arrays.asList(&apos;Java&apos;, &apos;Python&apos;, &apos;Ruby&apos;, &apos;Go&apos;, &apos;Perl&apos;)); System.out.println(&apos;Second List: &apos;+secondList); // Finds common elements System.out.print(&apos;Common elements: &apos; +firstList.stream().filter(secondList::contains).collect(Collectors.toList())); } } 

Produzione

 First List: [Java, Python, Ruby, Go] Second List: [Java, Python, Ruby, Go, Perl] Common elements: [Java, Python, Ruby, Go]