Processing 如何调试处理中的NullPointerException?
我正在制作一个动画处理它是一个模拟球上升和下降,我有一个错误,说“NullPointerException”,它不断出现我会给出代码并显示错误的地方:Processing 如何调试处理中的NullPointerException?,processing,Processing,我正在制作一个动画处理它是一个模拟球上升和下降,我有一个错误,说“NullPointerException”,它不断出现我会给出代码并显示错误的地方: Obj[]objs=新Obj[100]; 无效设置(){ 大小(10001000); } 作废提款(){ 背景(250); for(int i=0;i
Obj[]objs=新Obj[100];
无效设置(){
大小(10001000);
}
作废提款(){
背景(250);
for(int i=0;i
以下是Obj的代码:
类Obj{
浮动x;
浮动y;
浮动速度;
浮动pspeed;
浮速;
void render(){
填充(0);
椭圆(x,y,5,5);
}
作废{
x=随机(-10001000);
y=y-1010;
}
无效运行(){
速度=随机(4,6);
pspeed=速度;
流速=0.05;
while(y0){
y=y+pspeed;
pspeed=pspeed-速度;
}
}
}
此行创建一个数组,可容纳100个Obj的实例:
Obj[]objs=新Obj[100];
但它实际上并没有创建任何实例。换句话说,数组包含100个null
值
然后,您在这些null
值之间循环,并试图对它们调用函数,这就是导致错误的原因
要解决此问题,您可能只想用实例填充阵列:
void setup(){
大小(10001000);
for(int i=0;i
无耻的自我提升:我写了一篇关于数组处理的教程。您没有显示调用draw的上下文。我猜NPE的原因是您没有初始化objs的元素