Java 中的空指针异常字符串 2D 数组


public String[][] fetchData()
{
    String[][] data = null;
    int counter = 0;
    while (counter < 10){
        data[counter] = new String[] {"abc"};
        counter++;
    }
    return data;
}

在此循环中获取错误。请让我知道我错在哪里

您需要为数据分配内存。

String[][] data = new String[ROW][COLUMN].

阅读此内容

String[][] data = null;

==> 尝试写入数据时出现空指针异常

你可能会这样做

String[][] data = new String[10][];

你会得到一个 NPE,因为你明确地将data设置为 null

String[][] data = null;

您需要先分配行数:

String[][] data = new String[][NUMBER_OF_ROWS];
data[counter] = new String[] {"abc"};

在这里,您将"abc"放入数组,但是如果只有一个单元格,为什么要使用数组?

data[counter] = new String("sample string");

就够了。ofc您还需要将"数据"声明为一维数组。