如何在 Java 中反转一个整型数组

Payel Ganguly 2023年1月30日 2020年10月15日
  1. 反转整型数组的基本 Java 程序
  2. Java 程序执行交换操作来反转整型数组
  3. 使用 Java 集合反转整型数组
  4. 使用 Java Collections.reverse(ArrayList) 反转整型数组
如何在 Java 中反转一个整型数组

在本教程内容中,我们将讨论如何使用 Java 反转一个整型数组。这些反转整型数组的结构需要 Java 循环和数组的编程知识。我们可以使用三个 Java 程序来执行反转操作。让我们通过实例来讨论每个程序的实现。

反转整型数组的基本 Java 程序

在第一个例子中,我们把数组的大小和数组的元素作为输入。我们考虑一个函数 reverse,它把数组(这里是 array)和数组的大小作为参数。在函数内部,我们初始化一个新的数组。第一个数组从第一个元素开始迭代,数组中的每一个元素都被放置在新声明的数组中,从后面的位置开始。这样,我们就可以将数组中的元素反过来放置到新的数组中。让我们按照下面的例子进行操作。

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

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

输出:

The reversed array:

15
14
13
12
11  

Java 程序执行交换操作来反转整型数组

在第二种方法中,我们使用类似的代码来实现数组的包含和打印。在这里,我们交换数组的元素,而不创建任何新的数组。数组的第一个元素与最后一个元素交换。第二个元素与倒数第二个元素互换,以此类推。下面的例子将详细解释这些操作。

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

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

输出:

The reversed array:

15
14
13
12
11

使用 Java 集合反转整型数组

第三种方法是使用 java.util.Collections.reverse(List list) 方法。这个方法可以将数组中的元素反转到指定的 list 中。首先,我们通过使用 java.util.Arraya.asList(array) 将数组转换成一个列表,然后以指定的方式反转列表。让我们在下面的例子中进行讨论。

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

输出:

[55, 45, 35, 25, 15]

使用 Java Collections.reverse(ArrayList) 反转整型数组

在最后一个例子中,我们将通过使用 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);  
   }
}

输出:

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

相关文章 - Java Array