Koks yra „Java“ sąrašo filtravimo procesas

Koks Yra Java Saraso Filtravimo Procesas



Sąrašo filtravimas “ Java programoje yra patogu kūrėjams, kurie dažniausiai dirba su duomenimis. Jis įsigalioja atnaujinant kodo funkcijas, ištrinant įrašus arba naudojant atskirame sąraše esančius duomenis. Tokiais atvejais sąrašo filtravimo metodas padeda kūrėjams efektyviai valdyti laiką ir atmintį.

Šis tinklaraštis padės filtruoti „Java“ sąrašą.







Koks yra „Java“ sąrašo filtravimo procesas?

„Java“ sąrašą galima filtruoti naudojant šiuos metodus:



Importuokite toliau pateiktą paketą visuose šio tinklaraščio pavyzdžiuose, kad pasiektumėte visas funkcijas „ java.util “ paketas:



importuoti java.util.* ;

1 metodas: filtruokite sąrašą „Java“ naudodami „for“ kilpą

Šis metodas taikomas „ dėl ' kilpa ant sukurto 'sąrašo', kad naujas ' ArrayList “ yra pridėtas prie filtruoto (-ų) elemento (-ų).





Pavyzdys

Toliau nurodytų kodo eilučių apžvalga:

viešas klasė Filtrų sąrašas {
viešas statinis tuštuma pagrindinis ( Styga [ ] args ) {
Sąrašas < Styga > pateiktas sąrašas = Masyvai . kaipSąrašas ( 'Rašiklis' , 'Trintukas' , 'Gallandiklis' ) ;
Sistema . išeiti . println ( 'Duotas sąrašas ->' + pateiktas sąrašas ) ;
Sąrašas < Styga > listFilter = naujas ArrayList <> ( ) ;
dėl ( Styga daiktas : pateiktas sąrašas ) {
jeigu ( daiktas. prasideda su ( 'IR' ) ) {
listFilter. papildyti ( daiktas ) ;
} }
Sistema . išeiti . println ( 'Filtruotas sąrašas ->' + listFilter ) ;
} }

Pagal šį kodo bloką:



  • Sukurkite sąrašą „ Styga “ duomenų tipus, turinčius nurodytas eilutės reikšmes, ir parodykite juos.
  • Po to sukurkite naują ' ArrayList ' pavadintas ' listFilter “, kad pridėtumėte jį su elementais, išfiltruotais iš ankstesnio sąrašo.
  • Dabar pritaikykite „ dėl “ ciklas, kad būtų kartojamas apibrėžtas pirmasis sąrašas ir filtruojamas pagal taikomą sąlygą, t. y. elementą (-ius), prasidedantį simboliu “ IR “.
  • Kai sąlyga patenkinama, filtruojamas sąrašas pridedamas prie konkrečios eilutės.

Išvestis

Kaip matote, filtruojamas sąrašas pridedamas su eilute, kuri atitinka taikomą sąlygą.

2 metodas: filtruokite sąrašą „Java“ naudodami „while“ kilpą

Šiuo požiūriu „ kol ' kilpa gali būti įgyvendinta kartu su ' Iteratorius “ klasę ir jos metodus pateiktam sąrašui filtruoti. Šie metodai apima „ hasNext()“ ir „next() “ metodus, kurie iškviečia kitą reikšmę iš sąrašo, jei tokia yra.

Sintaksė

loginis hasNext ( )

Šis metodas grąžina loginį rezultatą, t. y. 'tiesa ar melas' .

viešas Kitas ( )

Čia, ' A “ atitinka “ Iteratoriaus sąsaja “.

Pavyzdys

Dabar pereikite prie šio kodo:

viešas klasė Filtrų sąrašas {
viešas statinis tuštuma pagrindinis ( Styga [ ] args ) {
Sąrašas < Styga > pateiktas sąrašas = naujas ArrayList <> (
Masyvai . kaipSąrašas ( 'Java' , 'Programavimas' , 'į' , 'Linux' ) ) ;
Sistema . išeiti . println ( 'Duotas sąrašas ->' + pateiktas sąrašas ) ;
Iteratorius < Styga > iteracija = pateiktas sąrašas. iteratorius ( ) ;
kol ( iteracija. hasNext ( ) ) {
Styga curr = iteracija. Kitas ( ) ;
jeigu ( curr. prasideda su ( 'P' ) ) {
iteracija. pašalinti ( ) ;
} }
Sistema . išeiti . println ( 'Filtruotas sąrašas ->' + pateiktas sąrašas ) ;
} }

Pagal aukščiau pateiktą kodą:

  • Sukurti „ ArrayList ' iš ' Styga “ įveskite nurodytą reikšmę ir parodykite ją.
  • Dabar kartokite sąrašo elementus naudodami „ Iteratorius ' klasė.
  • Taip pat taikykite „ kol “ kilpa, kad patikrintų, ar sąraše yra kitas elementas per „ hasNext () “ metodą ir gaukite jį pagal taikomą “ Kitas() “ metodas.
  • Dabar patikrinkite, ar kartojamas elementas sąraše atitinka nurodytą sąlygą, kaip aptarta ankstesniame pavyzdyje.
  • Įvykdžius sąlygą, tas konkretus elementas pašalinamas ir sąrašas filtruojamas.

Išvestis

Kaip išanalizuota, nurodytą sąlygą atitinkantis elementas tinkamai pašalinamas iš sąrašo.

Į kitą metodą įtraukite toliau pateiktą papildomą paketą, kad galėtumėte dirbti su „ Kolekcionieriai ' klasė:

importuoti java.util.stream.Collectors ;

3 būdas: filtruokite sąrašą „Java“ naudodami „filtro()“ metodą

The 'filtras()' metodas naudojamas srauto elementams filtruoti pagal pateiktą predikatą. Šis metodas gali būti naudojamas sąrašų srautui filtruoti.

Sintaksė

Srautas < X > filtras ( Predikatas super X > prieš )

Šioje sintaksėje „ prieš “ atitinka “ Predikatas “, kuris gali būti lambda išraiška kaip argumentas.

Pavyzdys

Apsvarstykite šį kodą:

viešas klasė 2 filtrų sąrašas {
viešas statinis tuštuma pagrindinis ( Styga [ ] args ) {
Sąrašas < Styga > pateiktas sąrašas = Masyvai . kaipSąrašas ( „Mobilusis“ , 'Nešiojamas kompiuteris' , 'PC' ) ;
Sistema . išeiti . println ( 'Duotas sąrašas ->' + pateiktas sąrašas ) ;
Styga listFilter = pateiktas sąrašas. srautas ( ) . filtras ( daiktas -> daiktas. prasideda su ( 'M' ) )
. rinkti ( Kolekcionieriai. prisijungimas ( ', ' , '[' , ']' ) ) ;
Sistema . išeiti . println ( 'Filtruotas sąrašas ->' + listFilter ) ;
} }

Šiose kodo eilutėse:

  • Taip pat sukurkite „ Sąrašas “ ir parodyti jo reikšmes.
  • Po to naudokite „ filtras() “ metodą, norėdami filtruoti srauto elementus sąraše pagal aptartą sąlygą ir nurodyti filtruotų elementų talpinimo taisykles per „ Kolekcionieriai “ klasė, atitinkamai.
  • Galiausiai grąžinkite filtruotą sąrašą.

Išvestis

Šiame rezultate galima numanyti, kad pridedamas naujas sąrašas su verte, atitinkančia nurodytą sąlygą.

Išvada

„Java“ sąrašą galima filtruoti naudojant „ „for“ ciklas, „while“ ciklas arba „filtras () “ metodas. Visi šie metodai filtruoja sąrašą pagal nurodytą sąlygą tiesiogiai arba per lambda išraišką. Šiame straipsnyje parodyta, kaip filtruoti „Java“ sąrašą.