Java 中list==null与list.size( )==0的区别

1.list==null,意味着list压根没有地址,在堆内就不存在。

2.list.size( )= 0,意思是堆内有list,但是还没有放元素,其长度随着元素数量变化而变化,暂时为零。

3.list如果为null的话,说明没有进行初始化。这是list调用任何的方法都会抛出空异常。list.size( )==0说明list已经被new过,但      是里面没有值。

4.判断时一定要注意先后顺序,如果连杯子(list)都没有,直接判断是否有水(list.size( )),是会报NullPointerException异常的。

举个例子:我有一个空着的水杯(list),然而你没有水杯,则你是null,我的size为0。你想装水就需要去买个水杯(new ArrayList( );),而我就可以直接装水(list.add(water))。你要是直接装水,由于没有杯子,则水就会流出(空指针异常)。所以经常会连用(list==null)&&(list.size( )==0)进行判断。

原文地址:https://www.cnblogs.com/daijiabao/p/11183241.html