logo

Come rimuovere un elemento da ArrayList in Java?

ArrayList fa parte di quadro di raccolta ed è presente nel pacchetto java.util. Ci fornisce array dinamici in Java. Tuttavia, potrebbe essere più lento degli array standard ma può essere utile nei programmi in cui è necessaria molta manipolazione nell'array. Questa classe si trova in java.util pacchetto. Con l'introduzione e gli aggiornamenti nelle versioni Java, sono disponibili metodi più recenti se vediamo da Java8 che le espressioni lambda percettive e i concetti di flusso non erano disponibili prima poiché è stato introdotto nella versione Java 8, quindi abbiamo più modi per operare su Arraylist per eseguire le operazioni. Qui discuteremo un modo per rimuovere un elemento da un ArrayList.

Durante la rimozione di elementi da ArrayList è possibile che si stia operando per rimuovere elementi sugli indici o tramite valori presenti in un ArrayList. Discuteremo entrambi i modi tramite l'interpretazione attraverso un programma Java pulito.



Metodi:

Ci sono 3 modi per rimuovere un elemento da ArrayList come elencato che in seguito verrà rivelato come segue:

  1. Utilizzo del metodo rimuovi() per indici (impostazione predefinita)
  2. Utilizzando il metodo rimuovi() per valori
  3. Utilizzo del metodo rimuovi() sugli iteratori

Nota: Non è consigliabile utilizzare ArrayList.remove() durante l'iterazione sugli elementi.



Metodo 1: Utilizzando il metodo rimuovi() per indici

È un metodo predefinito non appena utilizziamo qualsiasi metodo sulla struttura dei dati, fondamentalmente funziona solo sugli indici, quindi ogni volta che utilizziamo il metodo delete() stiamo sostanzialmente rimuovendo elementi dagli indici da un ArrayList.

Classe ArrayList fornisce due metodi delete() sovraccaricati.



  • rimuovi(int indice): accetta l'indice dell'oggetto da rimuovere
  • rimuovi(Oggetto oggetto): accetta l'oggetto da rimuovere

Cerchiamo di capire con l'aiuto degli esempi forniti di seguito come segue:

Esempio:

cos'è jquery

Giava


stringa.confronta C#



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

>

>

Produzione

[10, 20, 30, 1, 2] [10, 1, 2]>

Ora abbiamo visto la rimozione di elementi in un ArrayList tramite indici sopra, ora vediamo che il parametro passato è considerato un indice. Come rimuovere gli elementi in base al valore.

Metodo 2: Utilizzando il metodo rimuovi() per valori

punto Java

Esempio:

Giava




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

>

>

Produzione :

[10, 20, 30,1 ,2] [10, 20, 30]>

Nota: Non è consigliabile utilizzare ArrayList.remove() durante l'iterazione sugli elementi.

Anche il nuovo Integer( int_value) è stato deprecato da Java 9, quindi è meglio utilizzare Integer.valueOf(int_value) per convertire un numero intero primitivo in oggetto intero.

Metodo 3: Utilizzando il metodo Iterator.remove()

Ciò può portare a ConcurrentModificationException Quando si esegue un'iterazione sugli elementi, si consiglia di utilizzare Iterator.remove() metodo.

tipi di join in rdbms

Esempio:

Giava




esempio di sottostringa in 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);> >}> }>

>

>

Produzione

[10, 20, 30, 1, 2] [10, 20, 30]>