gpt4 book ai didi

java - Java中为二维数组赋值

转载 作者:行者123 更新时间:2023-12-02 10:34:15 26 4
gpt4 key购买 nike

我需要为我的二维数组分配一个值。

我尝试编写如下代码,但出现 NullPointer 异常错误。

    MethodClass[][] methodSet = new MethodClass[1][1];

methodSet[0][0].setmethodName(1);
methodSet[0][1].setmethodStatus(1);

MethodClass文件:

public class MethodClass {

private int methodName;
private int methodStatus;

public MethodClass() {
methodName = 0;
methodStatus = 0;
}

public int getmethodName() {
return methodName;
}

public int getmethodStatus() {
return methodStatus;
}

public void setmethodName(int i) {
this.methodName = i;
}

public void setmethodStatus(int status) {
this.methodStatus = status;
}
}

我可以知道如何将值初始化为二维数组吗?

最佳答案

当您尝试访问类的成员但该类的实例本身包含 null 值时,会发生 NullPointerException。

为了防止出现 NullPointerException,您必须初始化数组值,对于对象类型数组,位置中的默认值将为 NULL

更好的做法:

    MethodClass[][] methodArray = new MethodClass[1][1]; //You can put any dimentions to this array, below for loop will initialize all the positions.

for (int i = 0; i < methodArray.length; i++){
for (int j = 0; j < methodArray[i].length; j++) {
methodArray[i][j] = new MethodClass();
}
}

然后您可以按如下方式访问您的方法:

  methodArray[0][0].setmethodName(1);
methodArray[0][0].setmethodStatus(1);

关于java - Java中为二维数组赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53405008/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com