logo

Odeberte prvek z ArrayList v Javě

ArrayList je podobné poli, jehož velikost lze upravit. Třída ArrayList je dostupná v java.util balení a prodlužuje Seznam rozhraní . Přidání a odebrání prvku z ArrayList je velmi snadné pomocí jeho vestavěných metod přidat() a odstranit() . Existuje však více než jeden způsob odstranění prvku z ArrayList:

testování výkonu
  1. Použití metody ArrayList.remove().
    1. Podle indexu.
    2. Podle prvku
  2. Použití metody Iterator.remove().
  3. Použití metody ArrayList.removeIf().
Odeberte prvek z ArrayList v Javě

Všechny tyto tři způsoby jsou nejlepší samy o sobě a lze je použít v různých scénářích. Pojďme pochopit všechny tyto tři způsoby, jeden po druhém.

Metoda ArrayList.remove().

Za použití odstranit() metoda Třída ArrayList je nejrychlejší způsob smazání nebo odebrání prvku z ArrayList. Poskytuje také dvě přetížené metody, tj. odstranit (int index) a odstranit (objekt objektu) . The odstranit (int index) metoda přijímá index objektu, který má být odstraněn, a odstranit (objekt objektu) metoda přijímá objekt, který má být odstraněn.

Vezměme si příklad, abychom pochopili, jak odstranit() používá se metoda.

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); } } } 

Výstup:

kolik je 25 ze 100
Odeberte prvek z ArrayList v Javě

Vezměme si další příklad, abychom pochopili, jak odstranit() metoda se používá k odstranění zadaného prvku z ArrayList.

RemoveElementMethod.java

 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); } } } 

Výstup:

Odeberte prvek z ArrayList v Javě

Metoda Iterator.remove().

The Iterator.remove() metoda je další způsob odstranění prvku z ArrayList. Není to tak užitečné v případě, kdy iterujete přes prvky. Když použijeme metodu remove() při iteraci prvků, vyvolá to ConcurrentModificationException . The Iterátor třída správně odstraňuje prvky při iteraci ArrayList.

Vezměme si příklad, abychom pochopili, jak se používá metoda Iterator.remove().

čtvrtletí v podnikání

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); } } } 

Výstup:

Odeberte prvek z ArrayList v Javě

Metoda ArrayList.removeIf().

Pokud chceme z ArrayList odstranit prvek, který splňuje predikátový filtr, removeIf() metoda je pro tento případ nejvhodnější. Této metodě předáme predikátový filtr jako argument.

Vezměme si příklad, abychom pochopili, jak removeIf() používá se metoda.

RemoveIfMethod.java

Java synchronizace
 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); } } } 

Výstup:

Odeberte prvek z ArrayList v Javě

Všechny výše diskutované metody se používají pro různé scénáře. Použití metody ArrayList.remove() je nejrychlejším způsobem odstranění prvku z ArrayList.