Cómo revertir un array de Int en Java

Payel Ganguly 12 octubre 2023
  1. Programa básico de Java para revertir un int array
  2. Programa de Java que realiza la operación de intercambio para invertir un array de Int
  3. Invertir un array de Int usando colecciones de Java
  4. Invertir un array de Int usando Java Collections.reverse(ArrayList)
Cómo revertir un array de Int en Java

En el contenido de este tutorial, discutiremos cómo revertir un array int usando Java. Esta estructura de revertir un array entera requiere conocimientos de programación de Java Loop y Java Array. Podemos realizar la operación inversa usando tres programas de Java. Discutamos las implementaciones de cada programa a través de ejemplos.

Programa básico de Java para revertir un int array

En este primer ejemplo, tomamos el tamaño del array y los elementos del array como entrada. Consideramos una función reverse que toma el array (aquí array) y el tamaño de un array como parámetros. Dentro de la función, inicializamos un nuevo array. La primera array se itera desde el primer elemento y cada elemento del array se coloca en la nueva array declarada desde la posición posterior. De esta manera, podemos invertir la posición de los elementos del array en la nueva array. Sigamos el siguiente ejemplo.

import java.io.*;
import java.lang.*;
import java.util.*;

public class Example1 {
  public static void reverse(int x[], int num) {
    int[] y = new int[num];
    int p = num;
    for (int i = 0; i < num; i++) {
      y[p - 1] = x[i];
      p = p - 1;
    }
    System.out.println("The reversed array: \n");
    for (int j = 0; j < num; j++) {
      System.out.println(y[j]);
    }
  }

  public static void main(String[] args) {
    int[] array = {11, 12, 13, 14, 15};
    reverse(array, array.length);
  }
}

Resultado:

The reversed array:

15
14
13
12
11  

Programa de Java que realiza la operación de intercambio para invertir un array de Int

En esta segunda salida, usamos el mismo código para la inclusión e impresión del array. Aquí, intercambiamos los elementos del array sin crear ninguna nueva array. El primer elemento del array se intercambia con el último elemento. El segundo elemento se intercambia con el penúltimo elemento y así sucesivamente. El siguiente ejemplo explicará esto en detalle.

import java.io.*;
import java.lang.*;
import java.util.*;

public class Example2 {
  public static void reverse(int x[], int num) {
    int a, b, c;
    for (a = 0; a < num / 2; a++) {
      c = x[a];
      x[a] = x[num - a - 1];
      x[num - a - 1] = c;
    }
    System.out.println("The reversed array: \n");
    for (b = 0; b < num; b++) {
      System.out.println(x[b]);
    }
  }

  public static void main(String[] args) {
    int[] array = {11, 12, 13, 14, 15};
    reverse(array, array.length);
  }
}

Resultado:

The reversed array:

15
14
13
12
11

Invertir un array de Int usando colecciones de Java

El tercer método es usar el método java.util.Collections.reverse(List list). Este método invierte los elementos de un array en la lista especificada. Primero, convertimos el array en una lista usando java.util.Arraya.asList(array) y luego invertimos la lista de una manera especificada. Veamos el siguiente ejemplo.

import java.util.*;

public class Example3 {
  public static void reverse(Integer x[]) {
    Collections.reverse(Arrays.asList(x));
    System.out.println(Arrays.asList(x));
  }

  public static void main(String[] args) {
    Integer[] arr = {15, 25, 35, 45, 55};
    reverse(arr);
  }
}

Resultado:

[55, 45, 35, 25, 15]

Invertir un array de Int usando Java Collections.reverse(ArrayList)

En este último ejemplo, aprenderemos a revertir un int ArrayList usando el método Collections.reverse(ArrayList).

import java.util.ArrayList;
import java.util.Collections;

public class Main {
  public static void main(String[] args) {
    ArrayList arrList = new ArrayList();
    arrList.add("20");
    arrList.add("30");
    arrList.add("40");
    arrList.add("50");
    arrList.add("60");
    System.out.println("Order Before Reverse: " + arrList);
    Collections.reverse(arrList);
    System.out.println("Order After Reverse: " + arrList);
  }
}

Resultado:

Order Before Reverse: [20, 30, 40, 50, 60]
Order After Reverse: [60, 50, 40, 30, 20]

Artículo relacionado - Java Array