The swap() method of java.util.Collections class is used to swap the elements at the specified positions in the specified list. If the specified positions are equal, invoking this method leaves the list unchanged.
Syntax:
public static void swap(List list, int i, int j)
Parameters: This method takes the following argument as a Parameter
- list – The list in which to swap elements.
- i – the index of one element to be swapped.
- j – the index of the other element to be swapped.
Exception This method throws IndexOutOfBoundsException, if either i or j is out of range (i = list.size() || j = list.size()).
Below are the examples to illustrate the swap() method
Example 1:
Java
import java.util.*;
public class GFG1 {
public static void main(String[] argv)
throws Exception
{
try {
List<String> vector = new ArrayList<String>();
vector.add( "A" );
vector.add( "B" );
vector.add( "C" );
vector.add( "D" );
vector.add( "E" );
System.out.println( "Before swap: " + vector);
System.out.println( "\nSwapping 0th and 4th element." );
Collections.swap(vector, 0 , 4 );
System.out.println( "\nAfter swap: " + vector);
}
catch (IndexOutOfBoundsException e) {
System.out.println( "\nException thrown : " + e);
}
}
}
|
Output:
Before swap: [A, B, C, D, E]
Swapping 0th and 4th element.
After swap: [E, B, C, D, A]
Example 2: For IndexOutOfBoundsException
Java
import java.util.*;
public class GFG1 {
public static void main(String[] argv) throws Exception
{
try {
List<String> vector = new ArrayList<String>();
vector.add( "A" );
vector.add( "B" );
vector.add( "C" );
vector.add( "D" );
vector.add( "E" );
System.out.println( "Before swap: " + vector);
System.out.println( "\nTrying to swap elements"
+ " more than upper bound index " );
Collections.swap(vector, 0 , 5 );
System.out.println( "After swap: " + vector);
}
catch (IndexOutOfBoundsException e) {
System.out.println( "Exception thrown : " + e);
}
}
}
|
Output:
Before swap: [A, B, C, D, E]
Trying to swap elements more than upper bound index
Exception thrown : java.lang.IndexOutOfBoundsException: Index: 5, Size: 5
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!
Last Updated :
11 May, 2021
Like Article
Save Article