java数组为空崩溃

Python09

java数组为空崩溃,第1张

java数组为空崩溃

我有一个对象数组-本质上是一个对象引用数组。在我所引用的类中,还有另一个引用。我需要初始化此数据结构,但在初始化期间会崩溃。我正在尝试在引用的类中初始化引用,但是它始终为null,因此有些Java“东西”我还不了解。这似乎很简单,但却令人沮丧。这是一个简单的问题示例:

public class ref1

{

public int myInt

}

public class ref2

{

public ref1 myRef

}

public ref2 buffer[]

int i

// Code to initialize the above data structures:

buffer = new ref2[255]

for (i=0i<255i++)

{

buffer[i] = new ref2()

buffer[i].myRef = new ref1() // (1) ALWAYS returns null????

}

最终,上面的代码将在我具有(1)标记的行上崩溃,并带有“ ArrayOutOfBoundsException”。我在调试器中注意到的第二件事是myRef始终设置为null。为什么无法创建和引用ref1对象?

如果我注释掉标有(1)的行,则没有异常陷阱,因此问题就在那里。

那要看数组元素是干什么了

比如是基础类型,如int,long byte 等等 ,那肯定都不是空,默认为0

如果是Object,直接判断就可以了,比如

Object [] objs = new Object[2]

if(objs[0] == null) {

    //这样处理就好了

}