1. 程式人生 > >foreach遍歷數組、數組的轉置與方陣的跡

foreach遍歷數組、數組的轉置與方陣的跡

ray n) length nbsp copy 數組方法 封裝 -s 調用方法

 1 public class Copy1 {
 2 
 3     public static void main(String[] args) {
 4         array1();                                        //如果不初始化元素,默認為0
 5         int [][] a = new int [][]{{1,3,2,5,7},{5,9,3,4,2}};
 6         int [][] b = new int [a[1].length][a.length];
 7         for(int i=0;i<b.length;i++){                    //
數組的轉置 8 for(int j =0;j<b[i].length;j++){ 9 b[i][j]=a[j][i]; 10 } 11 } 12 printArray(a);    //調用方法遍歷a 13 System.out.println(); 14 System.out.println(); 15 printArray(b);                    //遍歷b
16 System.out.println(); 17 for(int []n:b){   //foreach用法,int[]n為零時變量 18 for(int m:n){     //int m零時變量 19 System.out.print(m+" "); 20 } 21 System.out.println(); 22 } 23 System.out.println();
24 25 26 int [][] c=new int[][]{{1,2,3},{4,5,6},{7,8,9}}; //創建數組 27 printArray(c); //調用方法遍歷數組 28 System.out.println(); 29 System.out.println(); 30 int [][] d=new int[c[0].length][c.length]; //d與c行列轉換(d叫做轉置後的c) 31 for(int i=0;i<d.length;i++){ //遍歷 32 for(int j=0;j<d[i].length;j++){ 33 d[i][j]=c[j][i]; 34 System.out.print(d[i][j]+" "); 35 } 36 System.out.println(); 37 } 38 System.out.println(); 39 System.out.println(); 40 41 42 //在方陣數組中d[i][j],當i==j時的所有元素的和叫做方陣的跡 43 { 44 int n=0; 45 for(int i=0;i<d.length;i++){ 46 for(int j=0;j<d[i].length;j++){ 47 if(i==j){ 48 n+=d[i][j]; //當i==j時 49 } 50 } 51 } 52 System.out.println(n); 53 } 54 } 55 56 57 58 private static void printArray(int[][] a) { //封裝遍歷數組方法 59 for(int i=0;i<a.length;i++){ 60 for(int j=0;j<a[i].length;j++){ 61 System.out.print(a[i][j]+" "); 62 } 63 System.out.println(); 64 } 65 66 } 67 68 private static void array1() { //默認初始化元素為0 69 int [][] a= new int[3][4]; 70 for(int i=0;i<a.length;i++){ 71 for(int j=0;j<a[i].length;j++){ 72 System.out.print(a[i][j]+" "); 73 } 74 System.out.println(); 75 } 76 } 77 78 }

foreach遍歷數組、數組的轉置與方陣的跡