ArrayList je súčasťou zberný rámec a nachádza sa v balíku java.util. Poskytuje nám dynamické polia v jazyku Java. Aj keď môže byť pomalší ako štandardné polia, ale môže byť užitočný v programoch, kde je potrebné veľa manipulácie v poli. Táto trieda sa nachádza v java.util balík. So zavedením a inováciami vo verziách java sú k dispozícii novšie metódy, ak z Java8 vidíme, že vnímavé výrazy lambda a koncepty prúdov neboli dostupné predtým, ako to bolo predstavené vo verzii java8, takže máme viac spôsobov, ako pracovať cez Arraylist vykonávať operácie. Tu budeme diskutovať o spôsobe, ako odstrániť prvok z ArrayList.
Pri odstraňovaní prvkov z ArrayList môžeme buď odstrániť prvky cez indexy, alebo prostredníctvom hodnôt, ktoré tam boli v ArrayList. Budeme diskutovať o oboch spôsoboch prostredníctvom tlmočenia prostredníctvom čistého programu Java.
Metódy:
Existujú 3 spôsoby, ako odstrániť prvok z ArrayList ako je uvedené, ktoré bude neskôr odhalené takto:
- Použitie metódy remove() podľa indexov (predvolené)
- Použitie metódy remove() podľa hodnôt
- Použitie metódy remove() cez iterátory
Poznámka: Pri iterácii prvkov sa neodporúča používať ArrayList.remove().
Metóda 1: Použitie metódy remove() podľa indexov
Je to predvolená metóda, akonáhle použijeme akúkoľvek metódu nad dátovou štruktúrou, v podstate funguje iba nad indexmi, takže vždy, keď použijeme metódu remove(), v podstate odstraňujeme prvky z indexov z ArrayList.
Trieda ArrayList poskytuje dve preťažené metódy remove().
- remove(int index): Prijme index objektu, ktorý sa má odstrániť
- remove(Object obj): Prijme objekt, ktorý sa má odstrániť
Poďme zistiť pomocou nižšie uvedených príkladov:
Príklad:
pandy iterrows
Java
c ukážkové programy programovania
// Java program to Remove Elements from ArrayList> // Using remove() method by indices> > // Importing required classes> import> java.util.ArrayList;> import> java.util.List;> > // Main class> public> class> GFG {> >// Main driver method> >public> static> void> main(String[] args)> >{> >// Creating an object of List interface with> >// reference to ArrayList class> >List al =>new> ArrayList();> > >// Adding elements to our ArrayList> >// using add() method> >al.add(>10>);> >al.add(>20>);> >al.add(>30>);> >al.add(>1>);> >al.add(>2>);> > >// Printing the current ArrayList> >System.out.println(al);> > >// This makes a call to remove(int) and> >// removes element 20> >al.remove(>1>);> > >// Now element 30 is moved one position back> >// So element 30 is removed this time> >al.remove(>1>);> > >// Printing the updated ArrayList> >System.out.println(al);> >}> }> |
>
>Výkon
[10, 20, 30, 1, 2] [10, 1, 2]>
Teraz sme videli odstraňovanie prvkov v ArrayList prostredníctvom indexov vyššie, teraz sa pozrime, že odovzdaný parameter sa považuje za index. Ako odstrániť prvky podľa hodnoty.
Metóda 2: Použitie metódy remove() podľa hodnôt
Príklad:
Java
vek salman khan
// Java program to Remove Elements from ArrayList> // Using remove() method by values> > // Importing required classes> import> java.util.ArrayList;> import> java.util.List;> > // Main class> public> class> GFG {> >// Main driver method> >public> static> void> main(String[] args)> >{> >// Creating an object of List interface with> >// reference to ArrayList> >List al =>new> ArrayList();> > >// Adding elements to ArrayList class> >// using add() method> >al.add(>10>);> >al.add(>20>);> >al.add(>30>);> >al.add(>1>);> >al.add(>2>);> > >// Printing the current ArrayList> >System.out.println(al);> > >// This makes a call to remove(Object) and> >// removes element 1> >al.remove(Integer.valueOf(>1>));> > >// This makes a call to remove(Object) and> >// removes element 2> >al.remove(Integer.valueOf(>2>));> > >// Printing the modified ArrayList> >System.out.println(al);> >}> }> |
ako vytvoriť pole v jave
>
>
Výkon :
[10, 20, 30,1 ,2] [10, 20, 30]>
Poznámka: Pri iterácii prvkov sa neodporúča používať ArrayList.remove().
Od Java 9 je tiež zastarané nové číslo Integer( int_value), takže je lepší nápad použiť Integer.valueOf(int_value) na konverziu primitívneho celého čísla na objekt typu Integer.
Metóda 3: Pomocou metódy Iterator.remove().
To môže viesť k ConcurrentModificationException Pri iterácii cez prvky sa odporúča použiť Iterator.remove() metóda.
Príklad:
Java
odovzdať reťazec do int java
// Java program to demonstrate working of> // Iterator.remove() on an integer ArrayList> import> java.util.ArrayList;> import> java.util.Iterator;> import> java.util.List;> > public> class> GFG {> > >// Main driver method> >public> static> void> main(String[] args)> >{> >// Creating an ArrayList> >List al =>new> ArrayList();> > >// Adding elements to our ArrayList> >// using add() method> >al.add(>10>);> >al.add(>20>);> >al.add(>30>);> >al.add(>1>);> >al.add(>2>);> > >// Printing the current ArrayList> >System.out.println(al);> > >// Creating iterator object> >Iterator itr = al.iterator();> > >// Holds true till there is single element> >// remaining in the object> >while> (itr.hasNext()) {> > >// Remove elements smaller than 10 using> >// Iterator.remove()> >int> x = (Integer)itr.next();> >if> (x <>10>)> >itr.remove();> >}> > >// Printing the updated ArrayList> >System.out.print(al);> >}> }> |
>
>Výkon
[10, 20, 30, 1, 2] [10, 20, 30]>