Skip to content
Related Articles

Related Articles

Improve Article
How to Swap Two Elements in an ArrayList in Java?
  • Last Updated : 08 Dec, 2020

We can swap two elements of Array List using Collections.swap() method. This method accepts three arguments. The first argument is the ArrayList and the other two arguments are the indices of the elements. This method returns nothing. 

Syntax:

public static void swap(List list, int a, int b);

Parameters

  • list: An ArrayList or any List implementing class in which elements are swapped
  • a: index of the first element
  • b: index of the second element

Exception: It throws IndexOutOfBoundsException if the index of Array List is less than 0 or greater than the size of the ArrayList.



Example 1

Java




// Java program to swap two elements in an ArrayList
  
import java.util.ArrayList;
import java.util.Collections;
  
public class GFG {
  
    public static void main(String a[])
    {
  
        // Create the Array List
        ArrayList<String> ArrList = new ArrayList<String>();
  
        // add the values in Array List
        ArrList.add("Item 1");
        ArrList.add("Item 2");
        ArrList.add("Item 3");
        ArrList.add("Item 4");
        ArrList.add("Item 5");
  
        // display Array List before swap
        System.out.println("Before Swap the ArrayList ");
        System.out.println(ArrList);
  
        // Swapping the elements at 1 and 2 indeces
        Collections.swap(ArrList, 1, 2);
  
        // display Array List after swap
        System.out.println("After Swap the ArrayList");
        System.out.println(ArrList);
    }
}
Output
Before Swap the ArrayList 
[Item 1, Item 2, Item 3, Item 4, Item 5]
After Swap the ArrayList
[Item 1, Item 3, Item 2, Item 4, Item 5]

Example 2

Java




// Java program to swap two elements in an ArrayList
  
import java.util.ArrayList;
import java.util.Collections;
  
public class GFG {
  
    public static void main(String a[]) throws Exception
    {
  
        // Create the Array List
        ArrayList<String> ArrList = new ArrayList<String>();
  
        // add the values in Array List
        ArrList.add("Item 1");
        ArrList.add("Item 2");
        ArrList.add("Item 3");
        ArrList.add("Item 4");
        ArrList.add("Item 5");
  
        // display Array List before swap
        System.out.println("Before Swap the ArrayList ");
        System.out.println(ArrList);
  
        // Swapping the elements at -1 and 2 indeces
        // Throws IndexOutOfBounds Exception
        Collections.swap(ArrList, -1, 2);
    }
}

Output

Exception in thread "main" java.lang.IndexOutOfBoundsException: Index -1 out of bounds for length 5
    at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
    at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
    at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248)
    at java.base/java.util.Objects.checkIndex(Objects.java:372)
    at java.base/java.util.ArrayList.get(ArrayList.java:458)
    at java.base/java.util.Collections.swap(Collections.java:501)
    at GFG.main(GFG.java:27)

Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.




My Personal Notes arrow_drop_up
Recommended Articles
Page :