Jaký je proces filtrování seznamu v Javě

Jaky Je Proces Filtrovani Seznamu V Jave



Filtrování seznamu ” v Javě je užitečný pro vývojáře, kteří většinou pracují s daty. Vstoupí v platnost při aktualizaci funkcí kódu, mazání záznamů nebo využití obsažených dat v samostatném seznamu. V takových scénářích je přístup filtrování seznamů nápomocný při efektivní správě času i paměti na konci vývojářů.

Tento blog vás provede filtrováním seznamu Java.







Jaký je proces filtrování seznamu Java?

Seznam v Javě lze filtrovat pomocí následujících přístupů:



Importujte níže uvedený balíček ve všech příkladech tohoto blogu, abyste získali přístup ke všem funkcím v rámci „ java.util ” balíček:



import java.util.* ;

Přístup 1: Filtrujte seznam v Javě pomocí smyčky „for“.

Tento přístup uplatňuje „ pro smyčka 'seznam' na vytvořeném 'seznamu' tak, že nový ' ArrayList ” je připojen k filtrovaným položkám.





Příklad

Přehled níže uvedených řádků kódu:

veřejnost třída Seznam filtrů {
veřejnost statický prázdnota hlavní ( Tětiva [ ] argumenty ) {
Seznam < Tětiva > danýSeznam = Pole . asList ( 'Pero' , 'Guma' , 'Ořezávátko' ) ;
Systém . ven . println ( 'Daný seznam ->' + danýSeznam ) ;
Seznam < Tětiva > listFilter = Nový ArrayList <> ( ) ;
pro ( Tětiva položka : danýSeznam ) {
-li ( položka. začíná s ( 'A' ) ) {
listFilter. přidat ( položka ) ;
} }
Systém . ven . println ( 'Filtrovaný seznam ->' + listFilter ) ;
} }

Podle tohoto bloku kódu:



  • Vytvořte seznam „ Tětiva ” datové typy s uvedenými řetězcovými hodnotami a zobrazí je.
  • Poté vytvořte nový „ ArrayList “ s názvem “ listFilter ” a připojte jej k položkám filtrovaným z předchozího seznamu.
  • Nyní použijte „ pro ” smyčka pro iteraci podél definovaného prvního seznamu a jeho filtrování na základě použité podmínky, tj. položek začínajících znakem “ A “.
  • Po splnění podmínky se k filtrovanému seznamu připojí konkrétní řetězec.

Výstup

Jak je vidět, k filtrovanému seznamu je připojen řetězec, který splňuje použitou podmínku.

Přístup 2: Filtrujte seznam v Javě pomocí smyčky „while“.

V tomto přístupu „ zatímco “ smyčka může být implementována spolu s “ Iterátor ” a její metody pro filtrování poskytnutého seznamu. Mezi tyto metody patří „ hasNext()“ a „next() ” metody, které vyvolají další hodnotu ze seznamu, pokud nějaká existuje.

Syntax

booleovský hasNext ( )

Tato metoda vrací booleovský výsledek, tj. 'pravda nebo lež' .

veřejnost Další ( )

Tady, ' A “ odpovídá „ Rozhraní iterátoru “.

Příklad

Nyní přejděte k následujícímu kódu:

veřejnost třída Seznam filtrů {
veřejnost statický prázdnota hlavní ( Tětiva [ ] argumenty ) {
Seznam < Tětiva > danýSeznam = Nový ArrayList <> (
Pole . asList ( 'Jáva' , 'programování' , 'v' , 'linux' ) ) ;
Systém . ven . println ( 'Daný seznam ->' + danýSeznam ) ;
Iterátor < Tětiva > opakování = danýSeznam. iterátor ( ) ;
zatímco ( opakování. hasNext ( ) ) {
Tětiva curr = opakování. další ( ) ;
-li ( curr. začíná s ( 'P' ) ) {
opakování. odstranit ( ) ;
} }
Systém . ven . println ( 'Filtrovaný seznam ->' + danýSeznam ) ;
} }

Podle výše uvedeného kódu:

  • Vytvořte „ ArrayList “ z “ Tětiva ” zadejte s poskytnutými hodnotami a zobrazte je.
  • Nyní iterujte prvky seznamu pomocí „ Iterátor “třída.
  • Aplikujte také „ zatímco smyčka “, abyste zkontrolovali, zda je v seznamu další prvek pomocí tlačítka “ hasNext() “ metodu a načtěte ji na základě použité “ další() “ metoda.
  • Nyní zkontrolujte, zda iterovaný prvek v seznamu splňuje uvedenou podmínku, jak je uvedeno v předchozím příkladu.
  • Po splnění podmínky je daný prvek místo toho odstraněn a seznam je filtrován.

Výstup

Při analýze je prvek splňující zadanou podmínku náležitě odstraněn ze seznamu.

Do dalšího přístupu zahrňte níže uvedený dodatečný balíček, abyste mohli pracovat s „ Sběratelé “třída:

import java.util.stream.kolektory ;

Přístup 3: Filtrujte seznam v Javě pomocí metody „filter()“.

The 'filtr()' metoda se používá k filtrování prvků proudu na základě daného predikátu. Tuto metodu lze použít k filtrování proudu seznamů.

Syntax

Proud < X > filtr ( Predikát super X > před )

V této syntaxi „ před “ odpovídá „ Predikát “, který může brát výraz lambda jako argument.

Příklad

Zvažte následující kód:

veřejnost třída Seznam filtrů 2 {
veřejnost statický prázdnota hlavní ( Tětiva [ ] argumenty ) {
Seznam < Tětiva > danýSeznam = Pole . asList ( 'Mobilní, pohybliví' , 'laptop' , 'PC' ) ;
Systém . ven . println ( 'Daný seznam ->' + danýSeznam ) ;
Tětiva listFilter = danýSeznam. proud ( ) . filtr ( položka -> položka. začíná s ( 'M' ) )
. sbírat ( Sběratelé. spojování ( ',' , '[' , ']' ) ) ;
Systém . ven . println ( 'Filtrovaný seznam ->' + listFilter ) ;
} }

V těchto řádcích kódu:

  • Podobně vytvořte „ Seznam “ a zobrazte jeho hodnoty.
  • Poté použijte „ filtr() ” metoda pro filtrování prvků streamu v seznamu na základě diskutované podmínky a specifikování konvencí pro obsažení filtrovaných položek pomocí “ Sběratelé “ třídy, resp.
  • Nakonec vraťte filtrovaný seznam.

Výstup

V tomto výsledku lze naznačit, že je připojen nový seznam s hodnotou splňující uvedenou podmínku.

Závěr

Seznam v Javě lze filtrovat pomocí „ cyklus for“, cyklus „while“ nebo „filter() “ metoda. Všechny tyto přístupy filtrují seznam na základě zadané podmínky přímo nebo prostřednictvím výrazu lambda. Tento článek demonstroval přístupy k filtrování seznamu Java.