¿Cómo intercambiar dos elementos en un ArrayList en Java?

Podemos intercambiar dos elementos de Array List usando el método Collections.swap() . Este método acepta tres argumentos. El primer argumento es ArrayList y los otros dos argumentos son los índices de los elementos. Este método no devuelve nada. 

Sintaxis:

intercambio de vacío estático público (Lista lista, int a, int b);

Parámetros

  • list : una ArrayList o cualquier clase de implementación de List en la que se intercambian elementos
  • a: índice del primer elemento
  • b : índice del segundo elemento

Excepción: arroja IndexOutOfBoundsException si el índice de Array List es menor que 0 o mayor que el tamaño de ArrayList.

Ejemplo 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 indices
        Collections.swap(ArrList, 1, 2);
 
        // display Array List after swap
        System.out.println("After Swap the ArrayList");
        System.out.println(ArrList);
    }
}
Producción

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]

Ejemplo 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 indices
        // Throws IndexOutOfBounds Exception
        Collections.swap(ArrList, -1, 2);
    }
}

Producción

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)

Publicación traducida automáticamente

Artículo escrito por mukulsomukesh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *