Java二維數組的概念和使用方法


二維數組

數組的數組---二維數組的每一個元素是一個一維數組

定義格式

數據類型[][] 數組名 = new 數據類型[二維數組的長度/包含的一維數組的個數][每個一維數組的長度];

int[][] arr = new int[3][5];---定義了一個整型的二維數組,其中包含3個一維數組,每個一維數組可以存儲5個整數

arr[0]---下標為0的位置上的一維數組

arr[1][3]---如果要獲取具體的元素需要兩個下標

數據類型[][] 數組名 = new 數據類型[二維數組的長度/包含的一維數組的個數][];

 

int[][] arr = new int[3][];----表示一個包含了三個整型的一維數組的二維數組(-------------這句話好好理解------------------------)

 

數據類型[][] 數組名 = {{元素},{元素1, 元素2},……};

int[][] arr = {{2,5},{1},{3,2,4},{1,7,5,9}};

注意:[]在變量名前的時候,是緊跟數據類型的;如果[]在后,則是屬於當前變量名。

二維數組的應用

二維數組的長度:數組名.length ---每個一維數組:數組名[下標].length

二維數組的遍歷---兩重for循環

for(int i = 0; i < arr.length; i++){ //遍歷二維數組,遍歷出來的每一個元素是一個一維數組
for(int j = 0; j < arr[i].length; j++){ //遍歷對應位置上的一維數組
System.out.println(arr[i][j]);
}
}

二維數組的反轉---頭尾交換

for(int start = 0, end = arr.length -1; start < end; start++,end--){
int[] temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
}

從控制台輸入行數,打印對應的楊輝三角

//從控制台獲取行數
Scanner s = new Scanner(System.in);
int row = s.nextInt();
//根據行數定義好二維數組,由於每一行的元素個數不同,所以不定義每一行的個數
int[][] arr = new int[row][];
//遍歷二維數組
for(int i = 0; i < row; i++){
    //初始化每一行的這個一維數組
    arr[i] = new int[i + 1];
    //遍歷這個一維數組,添加元素    
    for(int j = 0; j <= i; j++){
        //每一列的開頭和結尾元素為1,開頭的時候,j=0,結尾的時候,j=i
        if(j == 0 || j == i){
            arr[i][j] = 1;
        } else {//每一個元素是它上一行的元素和斜對角元素之和
            arr[i][j] = arr[i -1][j] + arr[i - 1][j - 1];
        }
        System.out.print(arr[i][j] + "\t");
    }
    System.out.println();
}

結果:

1

1   1

1   2   1

1   3   3   1

1   4   6   4   1

1   5   10 10 5   1

楊輝三角用二維數組的理解:

arr[i][j] = arr[i -1][j] + arr[i - 1][j - 1]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM