Mikä on prosessi luettelon suodattamiseksi Javassa

Mika On Prosessi Luettelon Suodattamiseksi Javassa



' Listan suodattaminen ” Javassa on kätevä kehittäjille, jotka työskentelevät enimmäkseen datan kanssa. Se tulee voimaan päivitettäessä koodin toimintoja, poistettaessa tietueita tai hyödynnettäessä sisältämiä tietoja erillisessä listassa. Tällaisissa skenaarioissa luettelosuodatusmenetelmä auttaa hallitsemaan sekä aikaa että muistia tehokkaasti kehittäjien lopussa.

Tämä blogi opastaa Java-luettelon suodattamiseen.







Mikä on Java-luettelon suodatusprosessi?

Java-luettelo voidaan suodattaa seuraavilla tavoilla:



Tuo alla annettu paketti kaikissa tämän blogin esimerkeissä päästäksesi kaikkiin ' java.util 'paketti:



tuonti java.util.* ;

Lähestymistapa 1: Suodata luettelo Javassa käyttämällä 'for' -silmukkaa

Tämä lähestymistapa soveltaa ' varten ' kiertää luotua 'Listaa' siten, että uusi ' ArrayList ' on liitetty suodatettujen kohteiden kanssa.





Esimerkki

Yleiskatsaus alla oleviin koodiriveihin:

julkinen luokkaa Suodatinlista {
julkinen staattinen mitätön pää ( merkkijono [ ] args ) {
Lista < merkkijono > annettuLista = Taulukot . kutenList ( 'Kynä' , 'Pyyhekumi' , 'Teroitin' ) ;
Järjestelmä . ulos . println ( 'Annettu lista ->' + annettuLista ) ;
Lista < merkkijono > listFilter = Uusi ArrayList <> ( ) ;
varten ( merkkijono kohde : annettuLista ) {
jos ( kohde. alkaa kanssa ( 'JA' ) ) {
listFilter. lisätä ( kohde ) ;
} }
Järjestelmä . ulos . println ( 'Suodatettu lista ->' + listFilter ) ;
} }

Tämän koodilohkon mukaan:



  • Luo luettelo ' merkkijono ” tietotyypit, joilla on ilmoitetut merkkijonoarvot, ja näytä se.
  • Luo sen jälkeen uusi ' ArrayList 'nimeltään' listFilter ' lisätäksesi sen edellisestä luettelosta suodatetuilla kohteilla.
  • Käytä nyt ' varten ' silmukka iteroidaksesi määritettyä ensimmäistä luetteloa pitkin ja suodattaa se sovelletun ehdon perusteella, eli alkioiden perusteella, jotka alkavat merkillä ' JA ”.
  • Kun ehto täyttyy, suodatettu luettelo liitetään tietyllä merkkijonolla.

Lähtö

Kuten näet, suodatettu luettelo on liitetty merkkijonolla, joka täyttää sovelletun ehdon.

Lähestymistapa 2: Suodata luettelo Javassa 'while'-silmukan avulla

Tässä lähestymistavassa ' sillä aikaa 'silmukka voidaan toteuttaa yhdessä ' Iteraattori ”-luokka ja sen menetelmät tarjotun luettelon suodattamiseksi. Näitä menetelmiä ovat mm. hasNext()' ja 'seuraava() ” -menetelmiä, jotka kutsuvat seuraavan arvon luettelosta, jos sellainen on.

Syntaksi

boolean hasNext ( )

Tämä menetelmä palauttaa loogisen tuloksen, ts. 'totta vai tarua' .

julkinen Seuraava ( )

Täällä, ' A ' vastaa ' Iteraattorin käyttöliittymä ”.

Esimerkki

Jatka nyt seuraavaan koodiin:

julkinen luokkaa Suodatinlista {
julkinen staattinen mitätön pää ( merkkijono [ ] args ) {
Lista < merkkijono > annettuLista = Uusi ArrayList <> (
Taulukot . kutenList ( 'Java' , 'Ohjelmointi' , 'sisään' , 'Linux' ) ) ;
Järjestelmä . ulos . println ( 'Annettu lista ->' + annettuLista ) ;
Iteraattori < merkkijono > iterointi = annettu Lista. iteraattori ( ) ;
sillä aikaa ( iterointi. hasNext ( ) ) {
merkkijono curr = iterointi. Seuraava ( ) ;
jos ( curr. alkaa kanssa ( 'P' ) ) {
iterointi. Poista ( ) ;
} }
Järjestelmä . ulos . println ( 'Suodatettu lista ->' + annettu Lista ) ;
} }

Yllä olevan koodin mukaan:

  • Luo ' ArrayList '/' merkkijono kirjoita annetut arvot ja näytä se.
  • Toista nyt luetteloelementit ' Iteraattori ”luokka.
  • Käytä myös ' sillä aikaa ' -silmukka tarkistaaksesi, onko luettelossa seuraava elementti '' hasNext() ' -menetelmää ja noutaa se käytetyn ' Seuraava() ”menetelmä.
  • Tarkista nyt, täyttikö luettelon iteroitu elementti asetetun ehdon, kuten edellisessä esimerkissä käsiteltiin.
  • Kun ehto täyttyy, kyseinen elementti poistetaan sen sijaan ja luettelo suodatetaan.

Lähtö

Kuten analysoidaan, määritetyn ehdon täyttävä elementti poistetaan luettelosta asianmukaisesti.

Sisällytä alla annettu lisäpaketti seuraavaan lähestymistapaan, jotta voit työskennellä ' Keräilijät ”luokka:

tuonti java.util.stream.Collectors ;

Lähestymistapa 3: Suodata luettelo Javassa käyttämällä 'filter()'-menetelmää

The 'suodattaa()' menetelmää käytetään suodattamaan stream-elementtejä annetun predikaatin perusteella. Tätä menetelmää voidaan käyttää luettelovirran suodattamiseen.

Syntaksi

Striimaa < X > suodattaa ( Predikaatti super X > ennen )

Tässä syntaksissa ' ennen ' vastaa ' Predikaatti ', joka voi ottaa lambda-lausekkeen argumenttina.

Esimerkki

Harkitse seuraavaa koodia:

julkinen luokkaa Suodatinlista2 {
julkinen staattinen mitätön pää ( merkkijono [ ] args ) {
Lista < merkkijono > annettu Lista = Taulukot . kutenList ( 'mobiili' , 'kannettava' , 'PC' ) ;
Järjestelmä . ulos . println ( 'Annettu lista ->' + annettu Lista ) ;
merkkijono listFilter = annettuLista. virta ( ) . suodattaa ( kohde -> kohde. alkaa kanssa ( 'M' ) )
. kerätä ( Keräilijät. liittyminen ( ', ' , '[' , ']' ) ) ;
Järjestelmä . ulos . println ( 'Suodatettu luettelo ->' + listFilter ) ;
} }

Näillä koodiriveillä:

  • Luo samalla tavalla ' Lista ' ja näyttää sen arvot.
  • Käytä sen jälkeen ' suodattaa() ' -menetelmää suodattaaksesi luettelon stream-elementit käsitellyn ehdon perusteella ja määrittää käytännöt suodatettujen kohteiden sisällyttämiselle ' Keräilijät ” luokkaa.
  • Palauta lopuksi suodatettu luettelo.

Lähtö

Tässä tuloksessa voidaan viitata siihen, että uusi lista on liitetty arvoon, joka täyttää esitetyn ehdon.

Johtopäätös

Java-luettelo voidaan suodattaa käyttämällä ' for'-silmukka, 'while'-silmukka tai 'filter() ”menetelmä. Kaikki nämä lähestymistavat suodattavat luettelon tietyn ehdon perusteella suoraan tai lambda-lausekkeen kautta. Tämä artikkeli esitteli lähestymistapoja Java-luettelon suodattamiseen.