Java:数组的反转

前言:记录数组反转的几个方法

给了一个数组,要求进行反转,得到以下数据

int[] list = {1, 2, 3, 4, 5};

// 得到结果[5,4,3,2,1]

第一种:

看到这个题目时,我的第一反应是这样:

int[] result = new int[list.length];
int maximum = list.length - 1;
for (int i = maximum; i >= 0; i--) {
    result[maximum - i] = list[i];
}
System.out.println(Arrays.toString(result));

第二种:

int[] result = new int[list.length];
for (int i = 0; i < list.length; i++) {
    result[i] = list[list.length - 1 - i];
}
System.out.println(Arrays.toString(result));

第三种:

又看老师写出了这种方法:

for (int i = 0, j = list.length - 1; i < j; i++, j--) {
    int temp = list[i];
    list[i] = list[j];
    list[j] = temp;
}
System.out.println(Arrays.toString(list));

第四种:

麻了麻了,人麻了

for (int i = 0; i < list.length / 2; i++) {
     int temp = list[i];
     list[i] = list[list.length - 1 - i];
     list[list.length - 1 - i] = temp;
}
System.out.println(Arrays.toString(list));

你可能感兴趣的:(数据结构,java)