Kāds ir Java saraksta filtrēšanas process

Kads Ir Java Saraksta Filtresanas Process



' Saraksta filtrēšana ” Java ir parocīgs izstrādātājiem, kuri galvenokārt strādā ar datiem. Tas stājas spēkā, atjauninot koda funkcionalitāti, dzēšot ierakstus vai izmantojot ietvertos datus atsevišķā sarakstā. Šādos scenārijos saraksta filtrēšanas pieeja palīdz efektīvi pārvaldīt gan laiku, gan atmiņu izstrādātāju galā.

Šis emuārs palīdzēs filtrēt Java sarakstu.







Kāds ir Java saraksta filtrēšanas process?

Java sarakstu var filtrēt, izmantojot šādas pieejas:



Importējiet tālāk norādīto pakotni visos šī emuāra piemēros, lai piekļūtu visām funkcionalitātēm java.util ” iepakojums:



imports java.util.* ;

1. pieeja: filtrējiet sarakstu Java, izmantojot cilpu “for”.

Šī pieeja piemēro ' priekš ' cilpu izveidotajā 'Sarakstā' tā, lai jauns ' ArrayList ” ir pievienots filtrētajam(-iem) vienumam(-iem).





Piemērs

Pārskats par tālāk norādītajām koda rindām:

publiski klasē Filtru saraksts {
publiski statisks nederīgs galvenais ( Stīga [ ] args ) {
Saraksts < Stīga > dots saraksts = Masīvi . kā Saraksts ( 'Pildspalva' , 'Dzēšgumija' , 'Asinātājs' ) ;
Sistēma . ārā . println ( 'Dotais saraksts ->' + dots saraksts ) ;
Saraksts < Stīga > listFilter = jauns ArrayList <> ( ) ;
priekš ( Stīga lieta : dots saraksts ) {
ja ( lieta. sākas ar ( 'UN' ) ) {
listFilter. pievienot ( lieta ) ;
} }
Sistēma . ārā . println ( 'Filtrētais saraksts ->' + listFilter ) ;
} }

Saskaņā ar šo koda bloku:



  • Izveidojiet sarakstu ar ' Stīga ” datu tipiem, kuriem ir norādītās virknes vērtības, un parādīt to.
  • Pēc tam izveidojiet jaunu ArrayList 'nosaukts' listFilter ”, lai pievienotu to ar vienumiem, kas filtrēti no iepriekšējā saraksta.
  • Tagad izmantojiet “ priekš ” cilpa, lai atkārtotu definēto pirmo sarakstu un filtrētu to, pamatojoties uz lietoto nosacījumu, t.i., vienumu(-iem), kas sākas ar rakstzīmi “ UN ”.
  • Ja nosacījums ir izpildīts, filtrētais saraksts tiek pievienots konkrētajai virknei.

Izvade

Kā redzams, filtrētajam sarakstam tiek pievienota virkne, kas atbilst lietotajam nosacījumam.

2. pieeja: filtrējiet sarakstu Java, izmantojot cilpu “while”.

Šajā pieejā “ kamēr ' cilpu var īstenot kopā ar ' Iterators ” klase un tās metodes, lai filtrētu sniegto sarakstu. Šīs metodes ietver ' hasNext()' un 'next() ” metodes, kas izsauc nākamo vērtību no saraksta, ja tāda ir.

Sintakse

Būla hasNext ( )

Šī metode atgriež Būla rezultātu, t.i., 'patiesība vai meli' .

publiski Nākamais ( )

Šeit, ' A ” atbilst “ Iteratora interfeiss ”.

Piemērs

Tagad pārejiet pie šāda koda:

publiski klasē Filtru saraksts {
publiski statisks nederīgs galvenais ( Stīga [ ] args ) {
Saraksts < Stīga > dots saraksts = jauns ArrayList <> (
Masīvi . kā Saraksts ( 'Java' , 'Programmēšana' , 'iekšā' , 'Linux' ) ) ;
Sistēma . ārā . println ( 'Dotais saraksts ->' + dots saraksts ) ;
Iterators < Stīga > iterācija = dots saraksts. iterators ( ) ;
kamēr ( iterācija. hasNext ( ) ) {
Stīga curr = iterācija. Nākamais ( ) ;
ja ( curr. sākas ar ( 'P' ) ) {
iterācija. noņemt ( ) ;
} }
Sistēma . ārā . println ( 'Filtrētais saraksts ->' + dots saraksts ) ;
} }

Saskaņā ar iepriekš minēto kodu:

  • Izveidojiet ' ArrayList ' no ' Stīga ” ierakstiet ar norādītajām vērtībām un parādiet to.
  • Tagad atkārtojiet saraksta elementus, izmantojot “ Iterators ” klase.
  • Tāpat izmantojiet ' kamēr ' cilpa, lai pārbaudītu, vai sarakstā ir nākamais elements, izmantojot ' hasNext() ” metodi un izgūt to, pamatojoties uz lietoto Nākamais() ” metode.
  • Tagad pārbaudiet, vai iterētais elements sarakstā atbilst norādītajam nosacījumam, kā aprakstīts iepriekšējā piemērā.
  • Ja nosacījums ir izpildīts, konkrētais elements tiek noņemts un saraksts tiek filtrēts.

Izvade

Kā analizēts, elements, kas atbilst norādītajam nosacījumam, tiek atbilstoši noņemts no saraksta.

Nākamajā pieejā iekļaujiet tālāk norādīto papildu paketi, lai varētu strādāt ar “ Kolekcionāri ” klase:

imports java.util.stream.Collectors ;

3. pieeja: filtrējiet sarakstu Java, izmantojot metodi “filtrs()”.

The 'filtrs ()' metode tiek izmantota, lai filtrētu straumes elementus, pamatojoties uz doto predikātu. Šo metodi var izmantot, lai filtrētu sarakstu straumi.

Sintakse

Straume < X > filtru ( Predikāts super X > pirms tam )

Šajā sintaksē ' pirms tam ” atbilst “ Predikāts ”, kas var pieņemt lambda izteiksmi kā argumentu.

Piemērs

Apsveriet šādu kodu:

publiski klasē Filtru saraksts2 {
publiski statisks nederīgs galvenais ( Stīga [ ] args ) {
Saraksts < Stīga > dots saraksts = Masīvi . kā Saraksts ( 'Mobilais' , 'klēpjdators' , 'PC' ) ;
Sistēma . ārā . println ( 'Dotais saraksts ->' + dots saraksts ) ;
Stīga listFilter = dots saraksts. straume ( ) . filtru ( lieta -> lieta. sākas ar ( 'M' ) )
. savākt ( Kolekcionāri. pievienojas ( ',' , '[' , ']' ) ) ;
Sistēma . ārā . println ( 'Filtrētais saraksts ->' + listFilter ) ;
} }

Šajās koda rindās:

  • Tāpat izveidojiet ' Saraksts ” un parādīt tās vērtības.
  • Pēc tam izmantojiet ' filtrs () ” metodi, lai filtrētu straumes elementus sarakstā, pamatojoties uz apspriesto nosacījumu, un norādītu filtrēto vienumu saturēšanas noteikumus, izmantojot “ Kolekcionāri ” klasē, attiecīgi.
  • Visbeidzot, atgrieziet filtrēto sarakstu.

Izvade

Šajā iznākumā var norādīt, ka tiek pievienots jauns saraksts ar vērtību, kas atbilst norādītajam nosacījumam.

Secinājums

Java sarakstu var filtrēt, izmantojot ' for” cilpa, cilpa “while” vai “filter() ” metode. Visas šīs pieejas filtrē sarakstu, pamatojoties uz noteiktu nosacījumu tieši vai izmantojot lambda izteiksmi. Šajā rakstā tika parādītas pieejas Java saraksta filtrēšanai.