gpt4 book ai didi

java - 您可以在 for 循环的增量器中使用数组引用吗

转载 作者:行者123 更新时间:2023-12-01 15:01:42 27 4
gpt4 key购买 nike

我有这段代码,但当我运行它时,它只会给我一个 NullPointerException

import javax.swing.JOptionPane;
public class System {


public static void main(String[] args) {
int a=Integer.parseInt(JOptionPane.showInputDialog("How many planets"));
Planet p[]=new Planet[a];
for (int i=1;i<=a;i++){
** p[i].setName("romain"); **
//line bugging is above
}
//for info the .setName method of the Planet class is
/*public void setName(String Na){
name=Na;
}*/

}

}

所以我的问题是:你可以使用增量器作为数组引用

最佳答案

您尚未初始化任何 Planet 引用。这就是您收到 NullPointerException 的原因。

Planet p[]=new Planet[a] 创建一个 Planet 引用数组,但内容全部初始化为 null。你需要有这样的东西:

Planet p[] = new Planet[a];
for (int i = 0; i < a; ++i) {
p[i] = new Planet();
p[i].setName("whatever");
}

是的,您可以使用循环变量来索引数组。您可以将循环变量用于您想要的任何用途:它只是一个恰好位于循环范围内的普通变量。

请注意,在 Java 中,数组始终从零开始,而不是从一开始。第一个元素位于索引零处。

关于java - 您可以在 for 循环的增量器中使用数组引用吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13548610/

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