Android:Arraylist声明期间的问题

时间:2011-11-09 15:35:57

标签: java android arraylist declaration

如果我像这样宣布Arraylist -

private ArrayList<Integer[]> nodeList;

然后,在向其中添加数组时,获取NullPointerException

但是,如果我将其更改为 -

private ArrayList<Integer[]> nodeList= new ArrayList<Integer[]>();

- 工作正常。

为什么第一个失败!

1 个答案:

答案 0 :(得分:3)

第一个只声明变量,但不创建实际对象。只有当您使用new时,才能实际创建对象。

在Java中,与C ++不同,声明变量不会分配local variable。要实际创建对象,您需要显式创建它[在您的示例中:使用new关键字]。
(*)请注意,这仅适用于reference类型对象,而java primitives是使用声明创建的。