import java.util.Arrays;

public class Reverse {
   
    public static void main(String[] args) {
   
        int[] arr1 = new int[]{
   1, 2, 3, 4, 5, 6};
        int[] arr2 = new int[6];
        //方法一:自身反转
        int[] ints = reverse(arr1);
        // 方法二:赋值给新数组(不推荐)
        //int[] ints = reverse(arr1, arr2);
        for (int i : ints) {
   
            System.out.println(i);
        }
    }

    /** * 使用第三变量进行自身反转 * * @param arr * @return */
    public static int[] reverse(int[] arr) {
   
        //System.out.println(Arrays.toString(arr));
        /** * 循环中定义变量min=0最小索引 * max=data.length‐1最大索引 * min++,max‐‐ */
        for (int min = 0, max = arr.length - 1; min <= max; min++, max--) {
   
            //利用第三方变量完成数组中的元素交换
            int temp = arr[min];
            arr[min] = arr[max];
            arr[max] = temp;

        }
        return arr;
    }

    /** * 赋值给一个新数组进行内容反转(不推荐) * * @param arr1 * @param arr2 * @return */
    public static int[] reverse(int[] arr1, int[] arr2) {
   

        //System.out.println(Arrays.toString(arr1));

        for (int i = 0; i < arr1.length; i++) {
   
            arr2[i] = arr1[arr1.length - i - 1];
        }
        return arr2;
    }
}