|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
public class YangHuiTest {
public static void main(String[] args) {
//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] = 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();
}
}
}
代码如上,我想知道下面这里
for(int j = 1;j < yangHui[i].length - 1;j++){
yangHui[i][j] = yangHui[i-1][j-1] + yangHui[i-1][j];
二维数组行数没有规定,这里yangHui[i].length - 1是怎么获得的呢?
- public class Main {
- public static void main(String[] args) {
- //1.声明并初始化二维数组
- int[][] yangHui = new int[10][];
- //2.给数组的元素赋值
- for (int i = 0; i < yangHui.length; i++) {
- yangHui[i] = new int[i + 1]; // <----- 注意这里 -----
- System.out.print("长度:" + yangHui[i].length + "\n"); // <----- 打印看看便知道了 -----
- //2.1 给首末元素赋值
- yangHui[i][0] = 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();
- }
- }
- }
复制代码
|
|