logo

So vergleichen Sie zwei ArrayList in Java

Es gibt folgende Möglichkeiten, zwei ArrayList in Java zu vergleichen:

  • Java gleich() Methode
  • Java alles entfernen() Methode
  • Java keepAll() Methode
  • Java ArrayList.contains() Methode
  • Java contentEquals() Methode
  • Java Strom Schnittstelle

Java-equals()-Methode

Java gleich() Methode von Aufführen Die Schnittstelle vergleicht das angegebene Objekt mit der Liste auf Gleichheit. Es überschreibt die gleich() Methode von Objekt Klasse.

Syntax

Apache
 boolean equals(Object o) 

Diese Methode akzeptiert eine Objekt auf Gleichheit mit der Liste verglichen werden. Es kehrt zurück WAHR Wenn das angegebene Objekt mit der Liste übereinstimmt, wird else zurückgegeben FALSCH .

Beispiel

Im folgenden Beispiel haben wir zwei ArrayList erstellt ersteListe Und zweite Liste . Vergleichen Sie beide Listen mithilfe von gleich() Methode gibt sie true zurück. Wir haben ein weiteres Element hinzugefügt zweite Liste um einen Unterschied zwischen firstList und secondList zu erstellen. Wenn wir nun einen Vergleich durchführen, wird es zurückgegeben FALSCH .

 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); } } 

Ausgabe

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

Java-Methode „removeAll()“ (das fehlende Element finden)

Java alles entfernen() Methode von Anordnungsliste Die Klasse wird verwendet, um alle Elemente aus der Liste zu entfernen, die in der angegebenen Sammlung enthalten sind. Es überschreibt die alles entfernen() Methode von AbstractCollection Klasse.

Syntax

 public boolean removeAll(Collection c) 

Diese Methode akzeptiert Sammlung als Parameter, der Elemente enthält, die aus dieser Liste entfernt werden sollen. Es kehrt zurück WAHR wenn sich diese Liste durch den Anruf geändert hat.

Beispiel

Im folgenden Beispiel haben wir zwei ArrayList erstellt ersteListe Und zweite Liste . Der alles entfernen() Die Methode entfernt alle Elemente der ersten Liste, da dieselben Elemente auch in der zweiten Liste vorhanden sind, außer Papaya . Also, Papaya ist das fehlende Element in der ersteListe . Daher kehrt es zurück Papaya . Die Methode gibt eine zurück leere Liste [] wenn beide Listen dieselben Elemente haben.

 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); } } 

Ausgabe

 [Papaya] 

Sehen wir uns ein weiteres Beispiel für die Methode „removeAll()“ an, die die nicht vorhandenen Elemente aus „firstList“ zurückgibt, nämlich „secondList“.

Beispiel

 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); } } 

Ausgabe

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

Java-Methode retainAll() (gibt gemeinsame Elemente in beiden Listen zurück)

Java keepAll() Methode von Anordnungsliste Die Klasse behält nur die Elemente der Liste, die auch in anderen Listen enthalten sind. Es überschreibt die keepAll() Methode von AbstarctCollection Klasse.

plsql

Syntax

 public boolean retainAll(Collection c) 

Diese Methode akzeptiert a Sammlung als Parameter, der Elemente enthält, die in der Liste beibehalten werden sollen. Es kehrt zurück WAHR wenn sich diese Liste durch den Anruf geändert hat.

Beispiel

In diesem Beispiel haben wir zwei ArrayList erstellt ersteListe Und zweite Liste durch die Verwendung der asList() Methode der Arrays Klasse. Die Methode asList() gibt eine Listenansicht des angegebenen Arrays zurück.

 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); } } 

Ausgabe

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

Java ArrayList.contains()-Methode

Java ArrayList.contains() Die Methode wird zum Vergleichen zweier Elemente unterschiedlicher ArrayList verwendet. Java ArrayList.contains() Methode überschreibt die enthält() Methode von AbstractCollection Klasse.

Syntax

 public boolean contains(Object o) 

Diese Methode analysiert ein Element, dessen Anwesenheit in der Liste überprüft werden soll. Es kehrt zurück WAHR Wenn das Element übereinstimmt, wird else zurückgegeben FALSCH .

Beispiel

In diesem Beispiel haben wir zwei ArrayList erstellt ersteListe Und zweite Liste von Zeichenfolge Typ. Wir haben diese ArrayList mit verglichen enthält() Methode. Wenn die Elemente der ersten Liste mit den Elementen der zweiten Liste übereinstimmen, wird zurückgegeben Ja und speichert diesen Wert in dritte Liste . Wenn das Element nicht übereinstimmt, wird es ebenfalls zurückgegeben NEIN .

 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); } } 

Ausgabe

 [Yes, No, No] 

Java contentEquals()-Methode

Java contentEquals() Methode vergleicht die Zeichenfolge mit dem StringBuffer und gibt a zurück Boolescher Wert Wert. Es gehört Zeichenfolge Klasse.

Syntax

 public boolean contentEquals(StringBuffer sb) 

Diese Methode akzeptiert StringBuffer als Parameter zum Vergleich mit dem String. Es kehrt zurück WAHR Wenn der String dieselbe Zeichenfolge wie der angegebene StringBuffer darstellt, wird else zurückgegeben FALSCH .

Beispiel

In diesem Beispiel haben wir zwei ArrayList erstellt ersteListe Und zweite Liste von Zeichenfolge Typ. Wir haben eine statische Methode erstellt vergleichenListe() welches zwei ArrayList analysiert ls1 Und ls2 als Argument und gibt a zurück Boolescher Wert Wert. Die Methode wandelt eine Liste in um Zeichenfolge . Der contentEquals() Die Methode vergleicht den String mit dem angegebenen StringBuffer.

Wir haben der zweiten Liste ein weiteres Element hinzugefügt, um den Unterschied zwischen beiden Listen zu erstellen und die erneut aufzurufen vergleichenListe() Methode, die zurückgibt FALSCH .

 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)); } } 

Ausgabe

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

Java-Stream-Schnittstelle

Java Strom ist eine Schnittstelle. Es gehört dazu java.util Paket. Es bietet eine Filter() Methode zum Filtern von Stream-Elementen auf der Grundlage gegebener Elemente. Es ist ein dazwischenliegend Verfahren.

Syntax

 Stream filter(Predicate predicate) 

Diese Methode akzeptiert Prädikat (funktionale Schnittstelle) als Argument und gibt einen neuen Strom resultierender Elemente zurück.

SQL-Anzahl eindeutig

Collect()-Methode

Eine andere Methode, die im folgenden Beispiel verwendet wird, ist die sammeln() Methode von Strom Schnittstelle.

Es führt mithilfe eines Collectors eine veränderliche Reduktionsoperation für die Elemente dieses Streams durch. Der Collector kapselt die Funktionen, die als Argumente zum Sammeln verwendet werden (Supplier, BiConsumer, BiConsumer). Es erlaubt Wiederverwendung von Inkassostrategien und Zusammensetzung der Sammeloperationen. es ist ein Terminal Betrieb.

Syntax

 R collect(Collector collector) 

Collectors.toList()-Methode

Der auflisten() ist eine statische Methode von Sammler Klasse. Es gehört dazu java.util.Stream.Collectors Klasse.

Syntax

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

Wo T ist die Art der Elemente. Es gibt a zurück Kollektor Dadurch werden alle Eingabeelemente in einer (ungeordneten) Begegnungsreihenfolge in einer Liste gesammelt.

Beispiel

Im folgenden Beispiel haben wir zwei ArrayList erstellt ersteListe Und zweite Liste vom Typ String. Der Filter() Die Methode gibt eine Liste gemeinsamer Elemente zurück, die in beiden Listen vorhanden sind.

 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())); } } 

Ausgabe

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