Yra šie būdai, kaip palyginti du „ArrayList“ „Java“:
- Java lygus () metodas
- Java pašalinti visus() metodas
- Java išlaikyti viską () metodas
- Java ArrayList.contains() metodas
- Java contentEquals() metodas
- Java Srautas sąsaja
Java equals() metodas
Java lygus () metodas Sąrašas sąsaja lygina nurodytą objektą su lygybės sąrašu. Jis nepaiso lygus () metodas Objektas klasė.
Sintaksė
veikimo testavimas
boolean equals(Object o)
Šis metodas priima an objektas lyginti su sąrašu. Tai grįžta tiesa jei nurodytas objektas yra lygus sąrašui, kitaip grįžta klaidinga .
Pavyzdys
Šiame pavyzdyje sukūrėme du ArrayList pirmasis sąrašas ir antrasis sąrašas . Abu sąrašų palyginimas naudojant lygus () metodas, jis grąžina teisingą. Pridėjome dar vieną elementą antrasis sąrašas norėdami sukurti skirtumą tarp firstList ir secondList. Dabar, jei atliekame palyginimą, jis grįžta klaidinga .
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); } }
Išvestis
[Apple, Pears, Guava, Mango] [Apple, Pears, Guava, Mango] true false
Java removeAll() metodas (rasti trūkstamą elementą)
Java pašalinti visus() metodas ArrayList klasė naudojama pašalinti iš sąrašo visus elementus, esančius nurodytoje kolekcijoje. Jis nepaiso pašalinti visus() metodas AbstractCollection klasė.
Sintaksė
public boolean removeAll(Collection c)
Šis metodas priimamas Kolekcija kaip parametras, kuriame yra elementų, kuriuos reikia pašalinti iš šio sąrašo. Tai grįžta tiesa jei šis sąrašas pasikeitė dėl skambučio.
Pavyzdys
Šiame pavyzdyje sukūrėme du ArrayList pirmasis sąrašas ir antrasis sąrašas . The pašalinti visus() metodas pašalina visus pirmojo sąrašo elementus, nes tie patys elementai yra ir antrajame sąraše, išskyrus Papaja . Taigi, Papaja yra trūkstamas elementas pirmasis sąrašas . Vadinasi, grįžta Papaja . Metodas grąžina an tuščias sąrašas [] jei abu sąrašai turi tuos pačius elementus.
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); } }
Išvestis
[Papaya]
Pažiūrėkime kitą metodo removeAll() pavyzdį, kuris grąžina elementus iš firstList, kurių nėra, yra secondList.
Pavyzdys
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); } }
Išvestis
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() metodas (pateikia bendrus elementus abiejuose sąrašuose)
Java išlaikyti viską () metodas ArrayList klasėje išsaugomi tik sąrašo elementai, esantys ir kitame sąraše. Jis nepaiso išlaikyti viską () metodas Abstraktų kolekcija klasė.
padaryti sh scenarijų vykdomąjį
Sintaksė
public boolean retainAll(Collection c)
Šis metodas priima a Kolekcija kaip parametras, kuriame yra elementų, kuriuos reikia palikti sąraše. Tai grįžta tiesa jei šis sąrašas pasikeitė dėl skambučio.
Pavyzdys
Šiame pavyzdyje sukūrėme du ArrayList pirmasis sąrašas ir antrasis sąrašas naudojant asList() metodas Masyvai klasė. Metodas asList() grąžina nurodyto masyvo sąrašo rodinį.
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); } }
Išvestis
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() metodas
Java ArrayList.contains() metodas naudojamas dviejų skirtingų ArrayList elementų palyginimui. Java ArrayList.contains() metodas viršija yra () metodas AbstrarctCollection klasė.
Sintaksė
public boolean contains(Object o)
Šis metodas analizuoja elementą, kurio buvimą sąraše reikia patikrinti. Tai grįžta tiesa jei elementas atitinka, kitaip grįžta klaidinga .
Pavyzdys
Šiame pavyzdyje sukūrėme du ArrayList pirmasis sąrašas ir antrasis sąrašas apie Styga tipo. Mes palyginome šiuos „ArrayList“ naudodami yra () metodas. Jei pirmojo sąrašo elementai sutampa su antrojo sąrašo elementais, jis grįžta Taip ir išsaugo šią vertę trečiasis sąrašas . Panašiai, jei elementas nesutampa, jis grįžta Nr .
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); } }
Išvestis
[Yes, No, No]
Java contentEquals() metodas
Java contentEquals() metodas lygina Styga su StringBuffer ir grąžina a loginis vertė. Tai priklauso Styga klasė.
Sintaksė
public boolean contentEquals(StringBuffer sb)
Šis metodas priima StringBuffer kaip parametrą, kurį galima palyginti su eilute. Tai grįžta tiesa jei eilutė žymi tą pačią simbolių seką kaip nurodyta StringBuffer, kitaip grąžinama klaidinga .
Pavyzdys
Šiame pavyzdyje sukūrėme du ArrayList pirmasis sąrašas ir antrasis sąrašas apie Styga tipo. Sukūrėme statinį metodą palyginti sąrašas () kuri analizuoja du ArrayList ls1 ir ls2 kaip argumentą ir grąžina a loginis vertė. Metodas paverčia sąrašą į Styga . The contentEquals() metodas lygina eilutę su nurodytu StringBuffer.
Į antrąjį sąrašą įtraukėme dar vieną elementą, kad sukurtume skirtumą tarp abiejų sąrašų ir vėl iškviestume palyginti sąrašas () metodas, kuris grąžina klaidinga .
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)); } }
Išvestis
When Lists are same: true When Lists are not same: false
„Java Stream“ sąsaja
Java Srautas yra sąsaja. Tai priklauso java.util paketą. Tai suteikia a filtras() srauto elementų filtravimo metodas pagal duotus elementus. Tai yra tarpinis procesas.
Sintaksė
Stream filter(Predicate predicate)
Šis metodas priimamas Predikatas (funkcinė sąsaja) kaip argumentą ir grąžina naują gaunamų elementų srautą.
.tif failą
surinkti() metodas
Kitame pavyzdyje naudojamas kitas metodas yra rinkti () metodas Srautas sąsaja.
Jis atlieka šio srauto elementų kintamą mažinimo operaciją, naudodamas rinktuvą. Kolektorius apima funkcijas, naudojamas kaip rinkimo argumentai (tiekėjas, vartotojas, vartotojas). Tai leidžia pakartotinis naudojimas rinkimo strategijas ir surinkimo operacijų sudėtį. Tai yra terminalas operacija.
Sintaksė
R collect(Collector collector)
Kolekcionieriai.toList() metodas
The išvardinti() yra statinis metodas Kolekcionieriai klasė. Tai priklauso java.util.Stream.Collectors klasė.
Sintaksė
public static Collector<t, ?, list> toList() </t,>
Kur T yra elementų tipas. Tai grąžina a Kolekcininkas kuris surenka visus įvesties elementus į sąrašą susitikimo (netvarkinga) tvarka.
Pavyzdys
Šiame pavyzdyje sukūrėme du ArrayList pirmasis sąrašas ir antrasis sąrašas stygos tipo. The filtras() metodas grąžina bendrų elementų, esančių abiejuose sąrašuose, sąrašą.
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())); } }
Išvestis
First List: [Java, Python, Ruby, Go] Second List: [Java, Python, Ruby, Go, Perl] Common elements: [Java, Python, Ruby, Go]