Java Program to Remove an Element from ArrayList using ListIterator - GeeksforGeeks

20 Dec, 2021
ListIterator.remove() method removes the last element from the list that was returned by next() or previous() cursor positions. It can be called only once per call to next or previous. It can be made only if the operation — add(E) has not called after the last call to next or previous.
Internal working in ArrayList is shown below be its removal or addition of elements to it. Considering generic removal of elements prior to the switch to ListIterator.
Syntax:
listIterator.remove();
Index to be removedIndex value to be removed
Index to be removed
Index value to be removed
Illustration:
Input:     ArrayList = [“Red”, “White”, “Blue”, “Pink”]
Output: ArrayList = [“Red”, “Blue”, “Pink”]
Remove element “White” or 2nd element in the ArrayList.
Input:     ArrayList = [“Red”, “White”, “Blue”, “Pink”]
Output : ArrayList = [“Red”, “White”, “Blue”, “Pink”]
Remove element “Black” or 5th element in the ArrayList. Since the element that has to be removed is not in the ArrayList so nothing will be removed.
Procedure: To Remove an element from ArrayList using ListIterator is as follows:
Create ArrayList instance new ArrayList<String>();Add elements in ArrayList colors using colors.add(“Red”);Create ListIterator instance of colors.listIterator();Print list elements before removing elements.Increment the iterator by listIterator.next() and move to element which you want to remove;Remove the element by listIterator.remove();Print the list after removing the element. In this example, we have removed the element “White.
Create ArrayList instance new ArrayList<String>();
Add elements in ArrayList colors using colors.add(“Red”);
Create ListIterator instance of colors.listIterator();
Print list elements before removing elements.
Increment the iterator by listIterator.next() and move to element which you want to remove;
Remove the element by listIterator.remove();
Print the list after removing the element. In this example, we have removed the element “White.
State transactions while deleting an element from ArrayList
Case 1: Using loops if the index of the element to be removed is known 
Java
// Java Program to Remove an element from ArrayList// using ListIterator // Importing ArrayList and ListIterator classes// of java.util packageimport java.util.ArrayList;import java.util.ListIterator; public class GFG {     // Main driver method    public static void main(String[] args)    {         // Create an  ArrayList        ArrayList<String> colors = new ArrayList<String>();         // Add elements to above ArrayList        colors.add("Red");        colors.add("White");        colors.add("Blue");        colors.add("Pink");        colors.add("Black");        colors.add("Green");         // ArrayList ={Red, White, Blue, Pink, Black, Green}        ListIterator<String> listIterator            = colors.listIterator();         System.out.println("List Before remove() method = "                           + colors);         // Removing ith element from ArrayList        // using listiterator         // Suppose i = 3, so traversing        // till that element        for (int i = 0; i < 3; i++) {            listIterator.next();        }         // Removes one more element from list        // 'blue' element is removed from arraylist        listIterator.remove();         // Printing the final ArrayList after removing        // elements from originally created ArrayList        System.out.println("List After remove() method =  "                           + colors);    }}
List Before remove() method = [Red, White, Blue, Pink, Black, Green]
List After remove() method =  [Red, White, Pink, Black, Green]
Case 2: If the element to be removed is known
Iterator/traverse over the ArrayList and increment the list Iterator. If we reached the required element then break the loop else we reach the end and nothing will be deleted. 
Java
// Java Program to Remove an element from ArrayList// using ListIterator // Importing ArrayList and ListIterator classes// of java.util packageimport java.util.ArrayList;import java.util.ListIterator; public class GFG {     // Main driver method    public static void main(String[] args)    {         // Create an ArrayList        ArrayList<String> colors = new ArrayList<String>();         // Adding elements to the arraylist        colors.add("Red");        colors.add("White");        colors.add("Blue");        colors.add("Pink");        colors.add("Black");        colors.add("Green");         ListIterator<String> listIterator            = colors.listIterator();         // Print the original ArrayList created        System.out.println("List Before remove() :- "                           + colors);         // we want to remove Blue element from the arraylist        for (String it : colors) {            listIterator.next();            // if we reached to required element break the            // loop            if (it == "Blue")                break;        }         // remove color blue from arraylist        listIterator.remove();         System.out.println("List After remove():- "                           + colors);    }}
List Before remove() :- [Red, White, Blue, Pink, black, green]
List After remove():- [Red, White, Pink, black, green]
 
anikakapoor
varshagumber28
surinderdawra388
Java-ArrayList
Picked
Java
Java Programs
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Comments
Old Comments
Hashtable in Java
Constructors in Java
Different ways of Reading a text file in Java
Comparator Interface in Java with Examples
Java Math random() method with Examples
Convert a String to Character array in Java
Java Programming Examples
Convert Double to Integer in Java
Implementing a Linked List in Java using Class
How to Iterate HashMap in Java?