Java - 10 二维数据
一维数组的每个元素又是一个一维数组
静态初始化
int[][] arr = {{0,0,0,0},{1,1,1,1},{2,2,2,2},{3,3,3,3}};
public class TwoDimensionArray {public static void main(String[] args) {int[][] arr = {{0,0,0,0},{1,1,1,1},{2,2,2,2},{3,3,3,3}};// 遍历二维数组的元素(一维数组)for(int i = 0; i<arr.length; i++){// 对每个一维数组遍历for(int j = 0; j<arr[i].length; j++){System.out.print(arr[i][j]+"\t");}System.out.println("");}}
}
动态初始化
int[][] a = new int[2][3];arr[1][1] = 8;
int[][] arr; // 先声明
arr = new int[2][3]; // 再开空间
列数不确定
int[][] arr = {{0},{1,1},{2,2,2},{3,3,3,3}};
int[][] arr = new int[3][];for(int i = 0; i<arr.length; i++){// 如果没有给一维数组new,arr[i]就是nullarr[i] = new int[i+1];
}
杨辉三角
public class Yanghui{public static void main(String[] args) {int[][] arr = new int[6][];for(int i = 0; i<arr.length; i++){arr[i] = new int[i+1];for(int j = 0; j<arr[i].length; j++){if(j == 0 || j == arr[i].length-1) arr[i][j] = 1; // 一头一尾是1else arr[i][j] = arr[i-1][j-1]+arr[i-1][j]; // 上层两个相加得到下层 }}// 输出for(int i = 0; i<arr.length; i++){for(int j = 0; j<arr[i].length; j++){System.out.print(arr[i][j] + "\t");}System.out.println("");}}
}