NullPointerException,锯齿状数组

use*_*498 -1 java exception

当我想引用构造函数之外的数组元素时,程序会抛出我 NullPointerException (location: function ratio)

private int tabPascal[][];


Pascal(int n){
    int tabPascal [][]= new int[n+1][];

    for(int i = 0; i <= n; i++){
        tabPascal[i] = new int[i+1];
    }


    for(int i = 0; i < tabPascal.length; i++){
        for(int j = 0; j<tabPascal[i].length; j++){

            tabPascal[i][j] = binomial(i,j);
            System.out.print(tabPascal[i][j] + "  ");
        }
        System.out.println();
    }

}
Run Code Online (Sandbox Code Playgroud)

...

   public int ratio(int n, int k){

    return tabPascal[n][k];
}
Run Code Online (Sandbox Code Playgroud)

Ale*_* C. 6

您在构造函数中隐藏了实例变量.因此它从未初始化.

private int tabPascal[][];


Pascal(int n){
    tabPascal = new int[n+1][];  
    ....
}
Run Code Online (Sandbox Code Playgroud)