List中new ArrayList和null有什么区别

List中new ArrayList和null有什么区别

  • List 这个是定义了Entity的集合变量,但是没有实例化,这个时候是不能使用的,否则会提示错误;
    List =null,定义了Entity的集合变量,并且实例化为null,与前面一个不同的是他可以被使用,但仅限于equals、==等判断或者其它非取值等操作;想用的话也是需要实例化或者里面已经有值了。

  • List=new ArrayList() 定义并且实例化为Arraylist,这个时候就可以做所有的List和ArrayList的操作,比如添加值、取值、迭代等等操作。
    其它的类型定义也是一样的,都需要先定义和初始化值才能使用。

  • 举个形象的例子,我有一个空着的水杯(list),而你没有,那你是null,我的size为0(list为空)。你想装水就需要自己去买个水杯(new ArrayList();),但是我就可以直接装水(list.add(水))。你要是没有杯子直接倒水,水就流出去啦(空指针异常)。
    List为空,可以理解为已经创建了List,分配了内存,长度为0,可以填数据。list为null,表示List不存在,未分配内存。

  • 判断List是空

  • if(list!=null && !list.isEmpty()){
    //对list中的值处理
    }else{
    //做其他处理
    }
    

猜你喜欢

转载自blog.csdn.net/Andrew_Chenwq/article/details/131079791