ArrayList ligner det array, hvis størrelse kan ændres. ArrayList-klassen er tilgængelig i java.util pakke og udvider Liste interface . Tilføjelse og fjernelse af et element fra ArrayList er meget let ved at bruge dets indbyggede metoder tilføje() og fjerne() . Der er dog mere end én måde at fjerne et element fra ArrayList på, som er som følger:
sql ddl kommandoer
- Brug af ArrayList.remove()-metoden
- Efter indeks.
- Efter element
- Brug af Iterator.remove()-metoden
- Brug af ArrayList.removeIf()-metoden
Alle disse tre måder er bedst hver for sig og kan bruges i nogle forskellige scenarier. Lad os forstå alle disse tre måder, én efter én.
ArrayList.remove() metode
Bruger fjerne() metoden til ArrayList klasse er den hurtigste måde at slette eller fjerne elementet fra ArrayList. Det giver også de to overbelastede metoder, dvs. fjern (int indeks) og fjern (objekt obj) . Det fjern (int indeks) metoden accepterer indekset for det objekt, der skal fjernes, og fjern (objekt obj) metode accepterer det objekt, der skal fjernes.
Lad os tage et eksempel for at forstå, hvordan fjerne() metode anvendes.
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); } } }
Produktion:
Lad os tage et andet eksempel for at forstå, hvordan fjerne() metode bruges til at fjerne det angivne element fra ArrayList.
RemoveElementMethod.java
hvad er 10 af 60
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); } } }
Produktion:
udefineret hældning
Iterator.remove() Metode
Det Iterator.remove() metode er en anden måde at fjerne et element fra en ArrayList. Det er ikke så nyttigt i tilfælde af, at man gentager elementer. Når vi bruger remove()-metoden, mens vi itererer elementerne, kaster den ConcurrentModificationException . Det Iterator klasse fjerner elementer korrekt, mens ArrayList itereres.
Lad os tage et eksempel for at forstå, hvordan metoden Iterator.remove() bruges.
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); } } }
Produktion:
ArrayList.removeIf() metode
Hvis vi ønsker at fjerne et element fra ArrayList, som opfylder prædikatfilteret, er removeIf() metoden er bedst egnet til dette tilfælde. Vi sender prædikatfilteret til den metode som et argument.
Lad os tage et eksempel for at forstå, hvordan removeIf() metode anvendes.
singleton design mønster java
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); } } }
Produktion:
Alle de ovenfor diskuterede metoder bruges til forskellige scenarier. Brug af metoden ArrayList.remove() er den hurtigste måde at fjerne et element fra ArrayList på.