gpt4 book ai didi

java - 方法中的 NullPointerException

转载 作者:行者123 更新时间:2023-12-01 07:38:00 26 4
gpt4 key购买 nike

我有一个返回类型 SENSOR 的方法粗体部分是我收到运行时 NullPointerException 的地方,无法理解原因。

 public Sensor getSensorAt(int x,int y,GridMap grid)
{
/*go through sensor storage array
* for eachsensor index call the get x get y method for that
* compare it to the x,y of the robot
*
*/

for(int i=0;i<s1.length;i++){
if(s1[i].getX() == x){ <======= NullpointerException
if(s1[i].getY()== y){

return s1[i];
}
}
}
return null;
}

最佳答案

您没有向我们展示 s1 是在哪里创建的,但看起来 s1 中没有针对某些索引 i 的任何内容。

我倾向于像这样编写 for 循环,以使这样的代码更干净

Object result = null;
for(int i=0;i<s1.length;i++){
Object current = s1[i]; // Replace Object with whatever your array actually contains
if(current.getX() == x && current.getY() == y) {
result = current;
break; // if you only need the first match
}
}

return result;

诸如格式之类的事情很重要,它将帮助您从一开始就防止错误,并在错误发生时更容易找到它们......

关于java - 方法中的 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9088995/

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