Java声明ArrayList

时间:2014-04-24 02:45:22

标签: java arraylist declaration

有时我看到ArrayLists声明为

ArrayList<String> str;

而有时我看到它像

一样
ArrayList<String> str = new ArrayList<String>();

这两者有什么区别吗?或者是相同的,是否比使用另一个更好?

3 个答案:

答案 0 :(得分:3)

ArrayList<String> str

这只是变量声明

ArrayList<String> str = new ArrayList<String>();

是str变量的初始化,默认大小为10。

答案 1 :(得分:1)

在第一个中只有一个对象的声明,而在第二个中你也进行了初始化。

在初始化对象的位置没有约束,除非在尝试访问对象之前它应该发生。

答案 2 :(得分:1)

第一个代码段只是声明 ArrayList(此时它是null),第二个代码段是声明并实例化它。没有任何明显的区别,恕我直言,第二个版本更有用,所以你不会冒险忘记实例化对象。