一般二维数组的基本格式
package com.Summer_0425.cn;
/**
* @author summer
* 二维数组的练习
* int[][],第一个括号表示行,第二个括号表示列
*/
public class Test03 {
//输出结果均为0,这里说明数组在未赋值前有默认初始值
//初始值:整数:0;小数:0.0;boolean:false;char:\u0000;引用类型:null
public static void main(String[] args) {
int [][] arr = new int[3][2];
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();
}
}
}
不规则二维数组的格式:
package com.Summer_0425.cn;
/**
* @author Summer
* 不规则二维数组的应用
*/
public class Test04 {
public static void main(String[] args) {
int [][] arr = new int[3][];
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
//输出值为null.说明一维数组不存在
//下面的方法给一维数组 各列 指定长度
arr[0] = new int[2];
arr[1] = new int[3];
arr[2] = new int[4];
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();
}
}
}
不规则二维数组解决杨辉三角型问题
package com.Summer_0425.cn;
/**
* @author Summer
* 用不规则二维数组的知识解决杨辉三角形问题
*/
public class Test05 {
public static void main(String[] args) {
//首先申明一个不规则的二维数组
int [][] arr = new int[7][];
//对二维数组进行初始化,生成一个根据行数列数不断增加的二维数组
for (int i = 0; i < arr.length; i++) {
arr[i] = new int[i+1];
}
//循环遍历这个二维数组,行数为0,列数为0,或者行数和列数相等时,这个位置的数字为1
//三角中心的数字等于其上一行正上方数字和正上方前一个数字之和。
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[i].length; j++) {
if (i == 0||j==0||i==j) {
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();
}
}
}