List list=new ArrayList();
      这样的list不为null,但是size=0,这样的集合对于之后的判断是没用的,甚至是报异常,如list.get(0.....n)这样的取值判断,就会报异常。

所以判断时候往往要双重判断。即list!=null && list.size()>0才好。

举例: 

  //题意:经过数据查询,查询结果为空(没有数据)

List<UserInfo> us=userInfoDao.findByNameAndPassword(userInfo); (相当于List list=new ArrayList();)

if(us.size() == 0){//困扰我五分钟,不知道为什么us==null行不同 return false; } else { return true; }

引用:

  容器ArrayList作为类的属性,就可以不用new,之后直接add()。但是在一个方法里定义了一个ArrayList的对象就必须要先new才能再add()。。。。。why?????


引用:

  就算ArrayList作为属性时、你没有创建对象、直接add、那也会有运行时错误的。


引用:

  成员变量在类实例化的时候有默认值,局部变量没有。
ArrayList的默认值是一个空的ArrayList?以前倒没注意过。一般来说,对象的默认值都是Null


成员变量,如果是对象的话,默认值都是null,ArrayList类型的也是null,不会是空的ArrayList。

 

 

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐