JAVA數組翻轉
阿新 • • 發佈:2017-06-02
[0 反轉 pre 打印 最好 print ring arr length
由於第一次寫博客,希望和大家共同進步,一起努力。
首先可
public class RevcArr { public static void main(String[] args) { // TODO Auto-generated method stub int []arr = {11,22,33,44,55,66,77}; for(int x=0;x<arr.length;x++){ System.out.println(arr[x]); } } }
以有一個對照組,運行後的結果如下:
11 22 33 44 55 66 77
這是正常的數組,要做的是將所有數字進行反轉。而不是這樣的翻轉:
public class RevcArr { public static void main(String[] args) { // TODO Auto-generated method stub int []arr = {11,22,33,44,55,66,77}; for(int x=0;x<arr.length;x++){//對照組 System.out.println(arr[x]+" "); System.out.println("*"); } for(int x=arr.length-1;x>=0;x--){ System.out.println(arr[x]+" "); } } }
這樣的翻轉雖然結果可以變成翻轉的結果,但是也將arr[0]等地址順序也進行了翻轉。不過還是將結果奉上:
11 * 22 * 33 * 44 * 55 * 66 * 77 * 77 66 55 44 33 22 11
所以最好還是這樣翻轉:
public class RevcArr { public static void main(String[] args) { // TODO Auto-generated method stub int []arr = {11,22,33,44,55,66,77}; for(int x=0;x<arr.length;x++){ System.out.println(arr[x]); System.out.println("*"); } RevcArr(arr);//這是對數組在翻轉類中進行的翻轉 print(arr);//這是在打印輸出 } public static void RevcArr(int[]arr){ for(int x=0;x<arr.length/2;x++){ int a = arr[x]; arr[x]=arr[arr.length-1-x]; arr[arr.length-1-x]=a; } } public static void print(int []arr){ for(int x=0;x<arr.length;x++){ System.out.println(arr[x]); } } }
結果:
11 * 22 * 33 * 44 * 55 * 66 * 77 * 77 66 55 44 33 22 11
JAVA數組翻轉