java杨辉三角代码不知哪里错了,输出结果不理想

二维数组

package day3;
//1
//11
//121
//1331
//14641
//15101051
//yanghui[i][j]=yanghui[i-1][j-1]+yanghui[i-1][j]
public class text3 {
    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 i=0;i<yanghui.length;i++){
            for (int j=0;j<yanghui[i].length;j++){
                if(j==0||j==yanghui[i].length){
                yanghui[i][0]=yanghui[i][i]=0;
                }
                else{
                    yanghui[i][j]=yanghui[i-1][j-1]+yanghui[i-1][j];
                    
                }
            }
        }

        
        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();
        }
    }
}

越界:if(j==0||j==yanghui[i].length-1)

yanghui[i][j]=yanghui[i-1][j-1]+yanghui[i-1][j];
这里没有判断i==0,可能导致i-1为-1