Tömb lista hasonló ahhoz a tömbhöz, amelynek mérete módosítható. Az ArrayList osztály elérhető a java.util csomagot és kiterjeszti a Lista felület . Egy elem hozzáadása és eltávolítása az ArrayList-ből nagyon egyszerű a beépített metódusok segítségével add() és eltávolítás() . Azonban egynél több módja is van egy elem eltávolításának az ArrayList-ből, amelyek a következők:
könyvtár átnevezése
- Az ArrayList.remove() metódus használata
- Index szerint.
- Elem szerint
- Az Iterator.remove() metódus használata
- Az ArrayList.removeIf() metódus használata
Ez a három módszer önmagában a legjobb, és különböző forgatókönyvekben használható. Értsük meg ezt a három módszert egyenként.
ArrayList.remove() metódus
Használni a eltávolítás() módszere a ArrayList osztály a leggyorsabb módja az elem törlésének vagy eltávolításának az ArrayList-ből. Biztosítja a két túlterhelt módszert is, pl. eltávolítás (int index) és eltávolítás (objektum objektum) . A eltávolítás (int index) metódus elfogadja az eltávolítandó objektum indexét, és a eltávolítás (objektum objektum) metódus elfogadja az eltávolítandó objektumot.
Vegyünk egy példát, hogy megértsük, hogyan a eltávolítás() módszert alkalmazzák.
RemoveMethod.java
import java.util.ArrayList; public class RemoveMethod { public static void main(String[] args) { // creating an ArrayList having default size 5 ArrayList arr = new ArrayList(5); // Adding elements to the ArrayList arr.add('Helen'); arr.add('Paul'); arr.add('Elanie'); arr.add('Marco'); System.out.println('The list of the size is: ' + arr.size()); // Showing all the elements in the ArrayList for (String name : arr) { System.out.println('Name is: ' + name); } // Removing element available at position 1 arr.remove(1); System.out.println(' After removing the element the size of the ArrayList is: ' + arr.size()); // Showing all the elements in the ArrayList for (String name : arr) { System.out.println('Name is: ' + name); } } }
Kimenet:
Vegyünk egy másik példát, hogy megértsük, hogyan a eltávolítás() metódust használjuk a megadott elem eltávolítására az ArrayList-ből.
RemoveElementMethod.java
szövegburkoló css
import java.util.ArrayList; public class RemoveElementMethod { public static void main(String[] args) { // creating an ArrayList having default size 5 ArrayList arr = new ArrayList(5); // Adding elements to the ArrayList arr.add('Helen'); arr.add('Paul'); arr.add('Elanie'); arr.add('Marco'); System.out.println('The list of the size is: ' + arr.size()); // Showing all the elements in the ArrayList for (String name : arr) { System.out.println('Name is: ' + name); } // Removing the specified element from ArrayList arr.remove('Paul'); System.out.println(' After removing the element the size of the ArrayList is: ' + arr.size()); // Showing all the elements in the ArrayList for (String name : arr) { System.out.println('Name is: ' + name); } } }
Kimenet:
tcp vs udp
Iterator.remove() Method
A Iterator.remove() metódus egy másik módja egy elem eltávolításának az ArrayList-ből. Ez nem olyan hasznos, ha elemek felett iterál. Amikor a remove() metódust használjuk az elemek iterálása közben, akkor a ConcurrentModificationException . A Iterátor osztály megfelelően eltávolítja az elemeket az ArrayList iterálása közben.
Vegyünk egy példát az Iterator.remove() metódus használatának megértéséhez.
IteratorRemoveMethod.java
import java.util.ArrayList; import java.util.Iterator; public class iteratorRemoveMethod { public static void main(String[] args) { // creating an ArrayList having default size 10 ArrayList numbers = new ArrayList(10); // Adding elements to the ArrayList numbers.add(12); numbers.add(1); numbers.add(8); numbers.add(5); numbers.add(9); System.out.println('The list of the size is: ' + numbers.size()); // Showing all the elements in the ArrayList for (Integer number : numbers) { System.out.println('Number is: ' + number); } // Removing elements greater than 10 using remove() method Iterator itr = numbers.iterator(); while (itr.hasNext()) { int data = (Integer)itr.next(); if (data > 10) itr.remove(); } System.out.println(' After removing the element the size of the ArrayList is: ' + numbers.size()); // Showing all the elements in the ArrayList for (Integer number : numbers) { System.out.println('Number is: ' + number); } } }
Kimenet:
ArrayList.removeIf() metódus
Ha egy olyan elemet szeretnénk eltávolítani az ArrayList-ből, amely kielégíti a predikátumszűrőt, akkor a RemoveIf() módszer a legalkalmasabb erre az esetre. A predikátumszűrőt argumentumként adjuk át ennek a metódusnak.
Vegyünk egy példát, hogy megértsük, hogyan a RemoveIf() módszert alkalmazzák.
android verziók
RemoveIfMethod.java
import java.util.ArrayList; public class RemoveIfMethod { public static void main(String[] args) { // creating an ArrayList having default size 10 ArrayList cities = new ArrayList(10); // Adding elements to the ArrayList cities.add('Berlin'); cities.add('Bilbao'); cities.add('Cape Town'); cities.add('Nazilli'); cities.add('Uribia'); cities.add('Gliwice'); System.out.println('The list of the size is: ' + cities.size()); // Showing all the elements in the ArrayList for (String city : cities) { System.out.println('City is: ' + city); } // Removing elements which are start with B using removeIf() method cities.removeIf(n -> (n.charAt(0) == 'B')); System.out.println(' After removing the element the size of the ArrayList is: ' + cities.size()); // Showing all the elements in the ArrayList for (String city : cities) { System.out.println('City is: ' + city); } } }
Kimenet:
A fent tárgyalt módszerek mindegyike különböző forgatókönyvekhez használatos. Az ArrayList.remove() metódus használata a leggyorsabb módja egy elem eltávolításának az ArrayList-ből.