动态初始化:
public class TwoDimensionalArray { public static void main(String[] args) { /* 动态创建下面二维数组,并输出 i = 0: 1 i = 1: 2 2 i = 2: 3 3 3 一共有三个一维数组,每个一维数组元素不一样 */ int[][] arr = new int[3][]; // 创建 二维数组 for(int i =0 ; i < arr.length ; i++) { // 给每一个一维数组开空间 new // 如果没有给一维数组 new 开空间,那么 arr[i] 就是 null arr[i] = new int[i + 1]; for(int j = 0 ; j < arr[i].length ; j++) { arr[i][j] = i + 1; } } for(int i = 0; i < arr.length ; i++) { for(int j = 0; j < arr[i].length; j++) { System.out.print(arr[i][j] + " "); } System.out.println(); } }
杨辉三角:
public class YangHui { public static void main(String[] args) { //打印一个十行的杨辉三角 /* 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 */ int[][] yangHui = new int[10][];// 十行杨辉三角所以有十个一维数组 for(int i = 0; i < yangHui.length; i++) { // 给每个一维数组开辟空间 yangHui[i] = new int[i + 1]; for(int j = 0; j < yangHui[i].length; j++) { //每一行的第一个元素和最后一个元素都是1 if(j == 0 || j == yangHui[i].length - 1) { yangHui[i][j] = 1; } else {// 不是第一个和最后一个就是中间的 yangHui[i][j] = yangHui[i - 1][j] + yangHui[ i - 1][j - 1]; } } } 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(); } } }