Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用java中的循环填充不规则数组_Java_Jagged Arrays - Fatal编程技术网

用java中的循环填充不规则数组

用java中的循环填充不规则数组,java,jagged-arrays,Java,Jagged Arrays,我想知道在Java中如何用循环填充一个不规则的数组。 在我的例子中,我想把帕斯卡三角形放在数组中。当我试着把它弄破的时候, //int[][]hako=新int[n][];->据我了解,;它给出了一个java.lang.NullPointerException。 谢谢 您需要将hako[i]初始化为数组,然后才能将变量分配给其中的索引,即hako[i][j] 你的hako是一个矩阵,但是你只初始化了一个维度,因此你的NullPointerException 要修复它,请尝试 for(int i

我想知道在Java中如何用循环填充一个不规则的数组。 在我的例子中,我想把帕斯卡三角形放在数组中。当我试着把它弄破的时候, //int[][]hako=新int[n][];->据我了解,;它给出了一个java.lang.NullPointerException。 谢谢

您需要将hako[i]初始化为数组,然后才能将变量分配给其中的索引,即hako[i][j]


你的hako是一个矩阵,但是你只初始化了一个维度,因此你的NullPointerException

要修复它,请尝试

for(int i = 0; i < n; i++){
    hako[i] = new int[r];
    for(int j = 0; j < r; j++){
      hako[i][j] = newton(i, j);
    }
    r++;
}

您可以更改大小并用任何数据填充它。我希望它对你和任何看到这段代码的人都有用。

你的hako是一个矩阵,但是你只初始化了一个维度,因此你的NullPointerException是的,但是你如何使它变得粗糙?
int      n    = 12, r = 1;
int [][] hako = new int [n][];

for(int i = 0; i < n; i++){
    for(int j = 0; j < r; j++){

        // need to initialize hako[i]
        hako[i] = new int[r];

        hako[i][j] = newton(i, j);
    }

    r++;
}
for(int i = 0; i < n; i++){
    hako[i] = new int[r];
    for(int j = 0; j < r; j++){
      hako[i][j] = newton(i, j);
    }
    r++;
}
public static void main(String[] args) {

    int y[][] = new int[4][];
    int four =4;
    for (int row = 0; row < y.length; row++) {
     y[row] = new int[four--];
    }

    RaggedArray(y);

    for (int row = 0; row < y.length; row++) {
        for (int column = 0; column < y[row].length; column++) {
            System.out.print(y[row][column] + " ");
        }
        System.out.println();
    }
}

public static void RaggedArray(int x[][]) {
    int j;
    for (int i = 0; i < x.length; i++) {
        int k=1;
        for (j = 0;j<x[i].length ; j++) {
            x[i][j] = k++;

        }

    }
}}