How to remove an element from ArrayList in Java?
Last Updated :
04 Jan, 2025
ArrayList is a part of collection framework and is present in java.util package. It provides us with dynamic arrays in Java. Though, it may be slower than standard arrays but can be helpful in programs where lots of manipulation in the array is needed. This class is found in java.util package. With the introduction and upgradations in java versions, newer methods are being available if we do see from Java8 perceptive lambda expressions and streams concepts were not available before it as it was introduced in java version8, so do we have more ways to operate over Arraylist to perform operations. Here we will be discussing a way to remove an element from an ArrayList.
Now, We will be discussing both ways via interpreting through a clean java program.
Methods:
There are 3 ways to remove an element from ArrayList as listed which later on will be revealed as follows:
- Using remove() method by indexes(default)
- Using remove() method by values
- Using remove() method over iterators
Note: It is not recommended to use ArrayList.remove() when iterating over elements.
Method 1: Using remove() method by indexes
It is a default method as soon as we do use any method over data structure it is basically operating over indexes only so whenever we do use remove() method we are basically removing elements from indices from an ArrayList.
ArrayList class provides two overloaded remove() methods.
Let us figure out with the help of examples been provided below as follows:
Example:
Java
// 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<Integer> 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);
}
}
Output[10, 20, 30, 1, 2]
[10, 1, 2]
Now we have seen removing elements in an ArrayList via indexes above, now let us see that the passed parameter is considered an index. How to remove elements by value.
Method 2: Using remove() method by values
Example:
Java
// 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<Integer> 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);
}
}
Output :
[10, 20, 30,1 ,2]
[10, 20, 30]
Note: It is not recommended to use ArrayList.remove() when iterating over elements.
Also new Integer( int_value) has been deprecated since Java 9, so it is better idea to use Integer.valueOf(int_value) to convert a primitive integer to Integer Object.
Method 3: Using Iterator.remove() method
This may lead to ConcurrentModificationException When iterating over elements, it is recommended to use Iterator.remove() method.
Example:
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<Integer> 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);
}
}
Output[10, 20, 30, 1, 2]
[10, 20, 30]
Similar Reads
Remove all elements from the ArrayList in Java Prerequisite: ArrayList in Java Given an ArrayList, the task is to remove all elements of the ArrayList in Java. Examples: Input: ArrayList = [1, 2, 3, 4] Output: ArrayList = [] Input: ArrayList = [12, 23, 34, 45, 57, 67, 89] Output: ArrayList = [] Using clear() method: Syntax: collection_name.clear
2 min read
Remove repeated elements from ArrayList in Java Prerequisite: ArrayList in Java Given an ArrayList, the task is to remove repeated elements of the ArrayList in Java. Examples: Input: ArrayList = [1, 2, 2, 3, 4, 4, 4] Output: [1, 2, 3, 4] Input: ArrayList = [12, 23, 23, 34, 45, 45, 45, 45, 57, 67, 89] Output: [12, 23, 34, 45, 57, 67, 89] Below are
3 min read
How to Remove Duplicates from ArrayList in Java Given an ArrayList with duplicate values, the task is to remove the duplicate values from this ArrayList in Java. Examples: Input: List = [1, 10, 2, 2, 10, 3, 3, 3, 4, 5, 5] Output: List = [1, 10, 2, 3, 4, 5] Input: List = ["G", "e", "e", "k", "s"] Output: List = ["G", "e", "k", "s"] Using Iterator
4 min read
How to remove given object from an Array in Java? Given an array arr of N objects, the task is to remove all the occurrences of a given object from the array in Java. Example: Input: String[] arr = { "Geeks", "for", "Geeks", "hello", "world" }, removeObj = "Geeks" Output: updated arr[] = {"for", "hello", "world"}Explanation: All the occurrences of
3 min read
How to remove a SubList from a List in Java Given a list in Java, the task is to remove all the elements in the sublist whose index is between fromIndex, inclusive, and toIndex, exclusive. The range of the index is defined by the user. Example: Input list = [1, 2, 3, 4, 5, 6, 7, 8], fromIndex = 2, endIndex = 4 Output [1, 2, 5, 6, 7, 8] Input
2 min read