【发布时间】:2010-07-12 13:18:58
【问题描述】:
我有以下全局数组...
public static float camObjCoord[] = new float[8000];
我有一个方法将值输入到它的索引中,我正在像这样发送它们......
layers.addcube(-6, -2, -6, -2);
i 是一个声明为..的类变量。
int i = 0;
并且层被声明为...
GLLayer layers = new GLLayer(this);
但是当我这样做时,我会在...处得到一个 NullPointerException。
public void addcube(float highx, float lowx, float highz, float lowz){
//Constructing new cube...
cubes++;
float highy = 4.5f;
float lowy = 2.5f;
//FRONT
Global.camObjCoord[i] = highx; //null pointer here.
有谁知道为什么它给了我一个空指针?还有更多代码,但我认为只给你相关的就足够了。
谢谢
【问题讨论】:
-
发布你得到的堆栈跟踪。
-
i(以及扩展名Global.camObjCoord.length)的值是多少? -
@ChrisF 如果您查看 if / else
i被声明为0或Global.camObjCoord的结尾,具体取决于条件 -
这是什么全局?看起来它是空的。 start 的价值是什么?
-
“还有更多的代码,但我认为只给你相关的就足够了。”这总是很难判断。如果你知道什么是相关的(即问题到底出在哪里),你可能已经找到了。如果确实是 NullPointerException,那么我怀疑您在未发布的代码中某处更改了 camObjCoord。