代码:
'''
package tests;
public class Yanghui {
public static void main(String[] args) {
//声明二维数组的三种方式
//第一种,已经知道数组的元素
int[][]arr1={{1,2},{2,3},{4,5}};
System.out.println("arr1的数值是:");
for(int i=0;i<3;++i){
for(int j=0;j<2;++j)
System.out.print(arr1[i][j]);
System.out.println("\n");
}
//第二种,只给定数组的大小
int[][] arr2=new int[4][3];//4行3列
System.out.println("arr2的数值是:");
for(int i=0;i<arr2.length;i++){
for(int j=0;j<arr2[i].length;j++)
arr2[i][j]=i*j;
}
for(int i=0;i<arr2.length;i++){
for(int j=0;j<arr2[i].length;j++)
System.out.print(arr2[i][j]);
System.out.println("\n");
}
//第三种数组二维长度可变化,列的长度每次都改变。行的大小是固定的
int[][] arr3=new int[4][];//4行
System.out.println("arr3的数值:");
for(int i=0;i<arr3.length;i++){
arr3[i]=new int[i+1];//行号也就是列长度,每次都要重新申请空间
for(int j=0;j<arr3[i].length;j++)
arr3[i][j]=i+j;
}
for(int i=0;i<arr3.length;i++){
for(int j=0;j<arr3[i].length;j++)
System.out.print(arr3[i][j]);
System.out.print("\n");
}
//杨辉三角的例子。1、声明并初始化二维数组
int [][]yanghui=new int[10][];
//2、给数组的元素赋值
for(int i=0;i<yanghui.length;i++){
yanghui[i]=new int[i+1];
//2.1给首末元素赋值
yanghui[i][0]=1;
yanghui[i][i]=1;
//2.2给非首末元素赋值
if(i>1){
for(int j=1;j<yanghui[i].length-1;j++){
yanghui[i][j]=yanghui[i-1][j-1]+yanghui[i-1][j];
}
}
}
//3、遍历二维数组
for(int i=0;i<yanghui.length;i++){
for(int j=0;j<yanghui[i].length;j++){
System.out.print(yanghui[i][j]+" ");
}
System.out.println();
}
}
}
结果:
arr1的数值是:
12
23
45
arr2的数值是:
000
012
024
036
arr3的数值:
0
12
234
3456
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1