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 list = [‘G’, ‘E’, ‘E’, ‘G’, ‘G’, ‘K’, ‘S’], fromIndex = 3, endIndex = 5
Output [‘G’, ‘E’, ‘E’, ‘K’, ‘S’]

  • Method 1: Using subList() and clear() method

    Syntax:

    List.subList(int fromIndex, int toIndex).clear()
    

    Example:

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

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

    chevron_right

    
    

    Output:

    Original List: [GFG, for, Geeks, computer, portal]
    Final List: [GFG, computer, portal]
    

    Note: Classes which can inherit AbstractList:

  • Method 2: Using removeRange() method

    Syntax:

    List.removeRange(int fromIndex, int toIndex)
    

    Example:

    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    // Java code to remove a subList
    // using removeRange() method
      
    import java.util.*;
      
    // since removeRange() is a protected method
    // ArrayList has to be extend the class
    public 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);
        }
    }

    chevron_right

    
    

    Output:

    Original List: [1, 2, 3, 4, 5, 6, 7, 8]
    Final List: [1, 2, 5, 6, 7, 8]
    


My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :
Practice Tags :


Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.