Java中new与null的不同

今天在写一个android的程序时,本来想初始化一个list的集合,以避免第二次的数据添加在第一次的后面,就直接使用了对象=null,发现在给list集合添加数据后运行出现了这样的错误。

翻译下来的意思是  试图在空对象引用上调用接口方法的布尔java. U.List.Advices(java. Lang.Object)” 

也就是说这个list集合并没有初始化。

查询资料后发现

比如:

List<Float> list=new ArrayList<>();

new相当于开辟了一块新内存放入了对象,并把它的引用给了list.而 list=null 就相当于list声明了一个空的对象的引用,并没有开辟新的空间,所以我在上面添加数据的时候就会出现空对象引用。

当然,这只是我个人的理解。学习中,还是得不断踩坑,哪怕这个坑很小。

猜你喜欢

转载自blog.csdn.net/petterp/article/details/83015401
今日推荐