Java数组如何反转?
程序员文章站
2022-03-22 15:19:46
...
本篇文章将给大家介绍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数组如何反转?的详细内容,更多请关注其它相关文章!
上一篇: 递归打印文件名
下一篇: Android获取当前系统日期和时间