Det finns följande sätt att jämföra två ArrayList i Java:
- Java lika() metod
- Java ta bort alla() metod
- Java retainAll() metod
- Java ArrayList.contains() metod
- Java contentEquals() metod
- Java Ström gränssnitt
Java equals()-metoden
Java lika() metod av Lista gränssnittet jämför det angivna objektet med listan för likhet. Den åsidosätter lika() metod av Objekt klass.
Syntax
spara youtube video vlc
boolean equals(Object o)
Denna metod accepterar en objekt att jämföras för jämställdhet med listan. Den återkommer Sann om det angivna objektet är lika med listan, returnerar else falsk .
Exempel
I följande exempel har vi skapat två ArrayList första listan och andralistan . Jämför båda listan genom att använda lika() metod, returnerar den sant. Vi har lagt till ytterligare ett element i andralistan för att skapa en skillnad mellan firstList och secondList. Nu, om vi utför jämförelse, kommer det tillbaka falsk .
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); } }
Produktion
[Apple, Pears, Guava, Mango] [Apple, Pears, Guava, Mango] true false
Java removeAll()-metoden (hittar det saknade elementet)
Java ta bort alla() metod av ArrayList klass används för att ta bort alla element från listan som finns i den angivna samlingen. Den åsidosätter ta bort alla() metod av Abstrakt samling klass.
Syntax
public boolean removeAll(Collection c)
Denna metod accepterar Samling som en parameter som innehåller element som ska tas bort från denna lista. Den återkommer Sann om denna lista ändrades som ett resultat av samtalet.
Exempel
I följande exempel har vi skapat två ArrayList första listan och andralistan . De ta bort alla() metod tar bort alla element i den första listan eftersom samma element också finns i den andra listan, förutom Papaya . Så, Papaya är det saknade elementet i första listan . Därför återkommer den Papaya . Metoden returnerar en tom lista [] om båda listan har samma element.
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); } }
Produktion
[Papaya]
Låt oss se ett annat exempel på metoden removeAll() som returnerar elementen från firstList som inte finns är secondList.
Exempel
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); } }
Produktion
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 retainAll()-metoden (returnerar vanliga element i båda listorna)
Java retainAll() metod av ArrayList klass behåller endast de element i listan som också finns i en annan lista. Den åsidosätter retainAll() metod av AbstarctCollection klass.
lyssna port
Syntax
public boolean retainAll(Collection c)
Denna metod accepterar a Samling som en parameter som innehåller element som ska behållas i listan. Den återkommer Sann om denna lista ändrades som ett resultat av samtalet.
Exempel
I det här exemplet har vi skapat två ArrayList första listan och andralistan genom att använda asList() metod för Matriser klass. Metoden asList() returnerar en listvy av den angivna arrayen.
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); } }
Produktion
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()-metoden
Java ArrayList.contains() metod används för att jämföra två element i olika ArrayList. Java ArrayList.contains() metoden åsidosätter innehåller() metod av Abstrakt samling klass.
Syntax
public boolean contains(Object o)
Denna metod analyserar ett element vars närvaro i listan ska kontrolleras. Den återkommer Sann om elementet matchas, returnerar else falsk .
Exempel
I det här exemplet har vi skapat två ArrayList första listan och andralistan av Sträng typ. Vi har jämfört dessa ArrayList med hjälp av innehåller() metod. Om elementen i firstList matchar elementen i secondList, returneras den Ja och lagrar detta värde i tredje listan . På samma sätt, om elementet inte matchar, kommer det tillbaka Nej .
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); } }
Produktion
[Yes, No, No]
Java contentEquals()-metoden
Java contentEquals() metoden jämför Sträng med StringBuffer och returnerar a booleskt värde. Den tillhör Sträng klass.
Syntax
public boolean contentEquals(StringBuffer sb)
Denna metod accepterar StringBuffer som en parameter att jämföra med String. Den återkommer Sann om strängen representerar samma teckensekvens som den angivna strängbufferten, returneras annars falsk .
Exempel
I det här exemplet har vi skapat två ArrayList första listan och andralistan av Sträng typ. Vi har skapat en statisk metod compareList() som analyserar två ArrayList ls1 och ls2 som ett argument och returnerar ett booleskt värde. Metoden omvandlar en lista till Sträng . De contentEquals() metoden jämför String med den angivna StringBuffer.
Vi har lagt till ytterligare ett element i den andra listan för att skapa skillnaden mellan båda listorna och återigen kalla den compareList() metod, som returnerar falsk .
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)); } }
Produktion
When Lists are same: true When Lists are not same: false
Java Stream Interface
Java Ström är ett gränssnitt. Det tillhör java.util paket. Det ger en filtrera() metod för att filtrera strömelement på basis av givna element. Det är en mellanliggande bearbeta.
Syntax
Stream filter(Predicate predicate)
Denna metod accepterar Predikat (funktionellt gränssnitt) som ett argument och returnerar en ny ström av resulterande element.
hur gammal är kylie jenner
collect() metod
En annan metod som används i följande exempel är samla() metod av Ström gränssnitt.
Den utför en föränderlig reduktionsoperation på elementen i denna ström med hjälp av en Collector. Samlaren kapslar in funktionerna som används som argument för att samla in (Leverantör, BiConsumer, BiConsumer). Det tillåter att återanvändning av insamlingsstrategier och sammansättning av insamlingsverksamheten. Det är en terminal drift.
Syntax
R collect(Collector collector)
Collectors.toList()-metoden
De att lista() är en statisk metod för Samlare klass. Det tillhör java.util.Stream.Collectors klass.
Syntax
public static Collector<t, ?, list> toList() </t,>
Var T är typen av element. Den returnerar en Samlare som samlar alla indataelement till en lista, i en mötesordning (oordnad).
Exempel
I följande exempel har vi skapat två ArrayList första listan och andralistan av String-typ. De filtrera() metod returnerar en lista över vanliga element som finns i båda listorna.
import java.util.*; public class CompareArrayListExample7 { public static void main(String[] args) { ArrayList firstList = new ArrayList(Arrays.asList('Java', 'Python', 'Ruby', 'Go')); System.out.println('First List: '+firstList); ArrayList secondList = new ArrayList(Arrays.asList('Java', 'Python', 'Ruby', 'Go', 'Perl')); System.out.println('Second List: '+secondList); // Finds common elements System.out.print('Common elements: ' +firstList.stream().filter(secondList::contains).collect(Collectors.toList())); } }
Produktion
First List: [Java, Python, Ruby, Go] Second List: [Java, Python, Ruby, Go, Perl] Common elements: [Java, Python, Ruby, Go]