杨辉三角:在if语句中判断元素是否为第一个或者最后一个
public class YangHui {
public static void main(String[] args) {
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++) {
//出现问题的语句
if (yangHui[i][j] == yangHui[i][0] || yangHui[i][j] == yangHui[i][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] + "\t");
}
System.out.println();
}
}
}
1
11
111
1111
11111
111111
1111111
11111111
111111111
1111111111
if (yangHui[i][j] == yangHui[i][0] || yangHui[i][j] == yangHui[i][yangHui[i].length - 1]) 所表达的意思是什么?
判断元素是第一个,你要去判断j==0,而不是yangHui[i][j] == yangHui[i][0]
你这是在判断第j个元素和第0个元素是否相等,不是在判断元素是第几个
j才是第几个
yangHui[i][j] 是第j个的值
这是一个条件比较,里面包含两个判断。只要任一判断成立,此条件即满足。
圈的部分就是条件1和条件2。