欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  Java

Java数组如何反转?

程序员文章站 2022-03-02 18:57:25
...
本篇文章将给大家介绍Java数组如何反转,那么在java中反转数组可以用三种简单的方法完成。

Java数组如何反转?

第一种方法:

(1)输入数组的大小和数组的元素。

(2)考虑一个函数reverse,它取参数 - 数组(比如arr)和数组的大小(比如n)。

(3)在函数内部,初始化一个新数组(第一个数组的数组大小为arr)。数组arr []从第一个元素迭代,数组arr []的每个元素从后面放置在新数组中,即新数组从其最后一个元素迭代。

(4)通过这种方式,数组arr []的所有元素都反向放置在新数组中。

(5)此外,我们可以从头开始遍历新数组并打印数组的元素。

public class reverseArray { 
     static void reverse(int a[], int n) 
    { 
        int[] b = new int[n]; 
        int j = n; 
        for (int i = 0; i < n; i++) { 
            b[j - 1] = a[i]; 
            j = j - 1; 
        } 
  
        System.out.println("反转数组: \n"); 
        for (int k = 0; k < n; k++) { 
            System.out.println(b[k]); 
        } 
    } 
  
    public static void main(String[] args) 
    { 
        int [] arr = {10, 20, 30, 40, 50}; 
        reverse(arr, arr.length); 
    } 
}

输出:

反转数组: 

50
40
30
20
10

第二种方法:

使用类似的代码来输入和打印数组。但是,我们不像上面的方法那样创建一个新的数组。相反,我们反转原始数组本身。在这个方法中,我们交换数组的元素。第一个元素与最后一个元素交换。第二个元素id与倒数第二个元素交换,以此类推。

例如,[1,2,3,...,n-2,n-1,n]。我们将1与n交换,2与n-1,3交换,n-2交换。

public class arrayReverse { 
  
    static void reverse(int a[], int n) 
    { 
        int i, k, t; 
        for (i = 0; i < n / 2; i++) { 
            t = a[i]; 
            a[i] = a[n - i - 1]; 
            a[n - i - 1] = t; 
        } 
  
        System.out.println("反转数组: \n"); 
        for (k = 0; k < n; k++) { 
            System.out.println(a[k]); 
        } 
    } 
  
    public static void main(String[] args) 
    { 
        int [] arr = {10, 20, 30, 40, 50}; 
        reverse(arr, arr.length); 
    } 
}

输出:

反转数组: 

50
40
30
20
10

第三种方法:

使用功能java.util.Collections.reverse(名单列表)方法。此方法会反转指定列表中的元素。因此,我们首先使用java.util.Arrays.asList(array)将数组转换为列表,然后反转列表。

import java.util.*; 
  
public class reversingArray { 
  
    static void reverse(Integer a[]) 
    { 
        Collections.reverse(Arrays.asList(a)); 
        System.out.println(Arrays.asList(a)); 
    } 
  
    public static void main(String[] args) 
    { 
        Integer [] arr = {10, 20, 30, 40, 50}; 
        reverse(arr); 
    } 
}

输出:

[50, 40, 30, 20, 10]

本篇文章就是关于Java数组反转的相关介绍,希望对需要的朋友有所帮助!

以上就是Java数组如何反转?的详细内容,更多请关注其它相关文章!

相关标签: Java数组反转