欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java數(shù)組反轉(zhuǎn)方式

 更新時間:2024年06月13日 08:33:36   作者:山川星河  
這篇文章主要介紹了Java數(shù)組反轉(zhuǎn)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

Java數(shù)組反轉(zhuǎn)

//方法1
public class ArrayReverse{
    public static void main(String[] args) {
        //定義數(shù)組
        int[] arr = {11, 22, 33, 44, 55, 66};
        //1、把 arr[0] 和 arr[5] 進行交換 {66, 22, 33, 44, 55, 11}
        //2、把 arr[1] 和 arr[4] 進行交換 {66, 55, 33, 44, 22, 11}
        //3、把 arr[2] 和 arr[3] 進行交換 {66, 55, 44, 33, 22, 11}
        //4、一共要交換 3 次 = arr.length / 2
        //5、每次交換時,對應的下標是 arr[i] 和 arr[arr.length - 1 - i]
        //代碼
        int temp = 0;
        int len = arr.length;
        for(int i = 0; i < len/2 ;i++){
            temp = arr[len - 1 - i];
            arr[len - 1 - i] = arr[i];
            arr[i] = temp;
        }
    }
} 

//方法2
public class ArrayReverse{
    public static void main(String[] args) {
        //定義數(shù)組
        int[] arr1 = {11, 22, 33, 44, 55, 66};

        //使用逆序賦值方式
        //1、先創(chuàng)建一個新的數(shù)組 arr2,大小 arr.length
        //2、逆序遍歷 arr,將每個元素拷貝到 arr2 的元素中(順序拷貝)
        //3、建議增加一個循環(huán)變量 j -> 0 -> 5
        int[] arr2 = new int[arr1.length];

        for(int i = arr1.length -1, j = 0; i>=0; i--, j++){
            arr2[j] = arr1[i];
        }
        //4、當 for 循環(huán)結(jié)束后, arr2 就是一個逆序數(shù)組
        //5、讓 arr 指向 arr2 的數(shù)據(jù)空間,此時 arr 原來的數(shù)據(jù)空間就沒用變量引用會被當做垃圾, 銷毀
        arr1 = arr2;
    }    
} 

Java數(shù)組反轉(zhuǎn)Reverse

三種反轉(zhuǎn)數(shù)組的方式

public class ReverseArray {
    public static void main(String[] args) {
        int[] arr = {11,22,33,55,66,88};
        printArray(arr);
        reverse0(arr);
        reverse1(arr);
        reverse2(arr);

    }
    public static void reverse0(int[] arr) {
        for(int i=0; i<arr.length/2; i++) {
            int tem = arr[i];
            arr[i] = arr[arr.length-1-i];
            arr[arr.length-1-i] = tem;
        }
        printArray(arr);
    }
    public static void reverse1(int[] arr) {
        for(int start=0,end=arr.length-1;start<end;start++,end--) {
            int temp = arr[start];
            arr[start] = arr[end];
            arr[end] = temp;
        }
        printArray(arr);
    }
    public static void reverse2(int[] arr) {
        int[] tem = new int[arr.length]; 
        for(int i=0; i<arr.length; i++) {
            tem[i] = arr[arr.length-1-i];
        }
        printArray(tem);
    }
    public static void printArray(int[] arr) {
        for(int i=0; i<arr.length; i++) {
            if(arr.length==1) {
                System.out.println("["+arr[0]+"]");
            }
            else if(i==0) {
                System.out.print("["+arr[0]+",");
            }
            else if(i==arr.length-1) {
                System.out.println(arr[i]+"]");
            }
            else {
                System.out.print(arr[i]+",");
            }
        }
    }

}

運行結(jié)果:

[11,22,33,55,66,88]
[88,66,55,33,22,11]
[11,22,33,55,66,88]
[88,66,55,33,22,11]

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論