How to remove a SubList from a List in Java

18 Jan, 2019
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 = 4Output [1, 2, 5, 6, 7, 8]
Input list = [‘G’, ‘E’, ‘E’, ‘G’, ‘G’, ‘K’, ‘S’], fromIndex = 3, endIndex = 5Output [‘G’, ‘E’, ‘E’, ‘K’, ‘S’]
Method 1: Using subList() and clear() methodSyntax:List.subList(int fromIndex, int toIndex).clear()
Example:// Java code to remove a subList using// subList(a, b).clear() method  import java.util.*;  public class AbstractListDemo {    public static void main(String args[])    {          // Creating an empty AbstractList        AbstractList<String>            list = new LinkedList<String>();          // Using add() method        // to add elements in the list        list.add("GFG");        list.add("for");        list.add("Geeks");        list.add("computer");        list.add("portal");          // Output the list        System.out.println("Original List: "                           + list);          // subList and clear method        // to remove elements        // specified in the range        list.subList(1, 3).clear();          // Print the final list        System.out.println("Final List: "                           + list);    }}Output:Original List: [GFG, for, Geeks, computer, portal]
Final List: [GFG, computer, portal]
Note: Classes which can inherit AbstractList:ArrayListVectorLinkedListStack
Syntax:
List.subList(int fromIndex, int toIndex).clear()

Example:
// Java code to remove a subList using// subList(a, b).clear() method  import java.util.*;  public class AbstractListDemo {    public static void main(String args[])    {          // Creating an empty AbstractList        AbstractList<String>            list = new LinkedList<String>();          // Using add() method        // to add elements in the list        list.add("GFG");        list.add("for");        list.add("Geeks");        list.add("computer");        list.add("portal");          // Output the list        System.out.println("Original List: "                           + list);          // subList and clear method        // to remove elements        // specified in the range        list.subList(1, 3).clear();          // Print the final list        System.out.println("Final List: "                           + list);    }}
Original List: [GFG, for, Geeks, computer, portal]
Final List: [GFG, computer, portal]

Note: Classes which can inherit AbstractList:
ArrayList
Vector
LinkedList
Stack
Method 2: Using removeRange() methodSyntax:List.removeRange(int fromIndex, int toIndex)
Example:// Java code to remove a subList// using removeRange() method  import java.util.*;  // since removeRange() is a protected method// ArrayList has to be extend the classpublic class GFG extends ArrayList<Integer> {      public static void main(String[] args)    {          // create an empty array list          GFG arr = new GFG();          // use add() method        // to add values in the list        arr.add(1);        arr.add(2);        arr.add(3);        arr.add(4);        arr.add(5);        arr.add(6);        arr.add(7);        arr.add(8);          // prints the list before removing        System.out.println("Original List: "                           + arr);          // removing elements in the list        // from index 2 to 4        arr.removeRange(2, 4);        System.out.println("Final List: "                           + arr);    }}Output:Original List: [1, 2, 3, 4, 5, 6, 7, 8]
Final List: [1, 2, 5, 6, 7, 8]

Syntax:
List.removeRange(int fromIndex, int toIndex)

Example:
// Java code to remove a subList// using removeRange() method  import java.util.*;  // since removeRange() is a protected method// ArrayList has to be extend the classpublic class GFG extends ArrayList<Integer> {      public static void main(String[] args)    {          // create an empty array list          GFG arr = new GFG();          // use add() method        // to add values in the list        arr.add(1);        arr.add(2);        arr.add(3);        arr.add(4);        arr.add(5);        arr.add(6);        arr.add(7);        arr.add(8);          // prints the list before removing        System.out.println("Original List: "                           + arr);          // removing elements in the list        // from index 2 to 4        arr.removeRange(2, 4);        System.out.println("Final List: "                           + arr);    }}
Original List: [1, 2, 3, 4, 5, 6, 7, 8]
Final List: [1, 2, 5, 6, 7, 8]

java-list
Java-List-Programs
Picked
Java
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Arrays in Java
Split() String method in Java with examples
Arrays.sort() in Java with examples
Reverse a string in Java
Object Oriented Programming (OOPs) Concept in Java
For-each loop in Java
How to iterate any Map in Java
Interfaces in Java
HashMap in Java with Examples
Stream In Java