精华内容
下载资源
问答
  • list集合空或为null的区别

    千次阅读 2018-11-27 10:25:07
    因为list是一个对象,这个对象被创建就一定存在只是没有值,但是如果为null是这个list集合根本就不存在! 举个栗子:我有对象(list),但是没结婚,而你没有,那你是null,我的size0。如果你想结婚,你就必须要...

    简述

    Java中,list集合为空还是为null,这是两码事。新建一个list对象,默认值是空,而非null;因为list是一个对象,这个对象被创建就一定存在只是没有值,但是如果为null是这个list集合根本就不存在!

    举个栗子:我有对象(list),但是没结婚,而你没有,那你是null,我的size为0。如果你想结婚,你就必须要先有对象(list集合),但是我就牛逼了,我就可以直接结婚啊!你没有对象直接结婚,警察叔叔肯定会干你了,这个时候就会NullPointException(空指针异常)。

    讲解:

    那么,我们什么时候用null,什么时候用isEmpty()或list.size()呢?

    • 空集合

    isEmpty() 或者(list.size() == 0)用于判断List内容是否为空,即表里一个元素也没有,即list是一个空集合,而不是null,所以为了避免异常,建议在使用或赋值list集合之前,做一次空集合创建处理,进行内存空间分配,也就是要结婚先找对象:

    List list2 = new ArrayList()

    list.isEmpty()和list.size()==0 没有区别, isEmpty()判断有没有元素,而size()返回有几个元素,如果判断一个集合有无元素,建议用isEmpty()方法.

    • null判断 
      list等于null,可理解为没有对list集合分配内存空间,也就是没有对象你结毛的婚。

    总结:

    所以,两者之间的区别,你懂了吧? 
    建议在编码时,采用:

    if(list != null && !list.isEmpty()){ 这个里面取list中的值}

    else{ 做其他处理}

    展开全文
  • 转自:大神的博客简述判断一个list集合是否空,我们的惯性思维是判断list是否等于null即可,但是在Java中,list集合空还是为null,这是两码事。引用举个形象的例子,我有一个空着的水杯(list),而你没有,那你...

    转自:大神的博客

    简述

    判断一个list集合是否为空,我们的惯性思维是判断list是否等于null即可,但是在Java中,list集合为空还是为null,这是两码事。

    引用

    举个形象的例子,我有一个空着的水杯(list),而你没有,那你是null,我的size为0。你想装水就需要自己去买个水杯(new ArrayList();),但是我就可以直接装水(list.add(水))。你要是没有杯子直接倒水,水就流出去啦(空指针异常)。

    判断

    那么,我们什么时候用null,什么时候用isEmpty()或list.size()呢?

    • 空集合

    isEmpty() 或者(list.size() == 0)用于判断List内容是否为空,即表里一个元素也没有, 但是使用isEmpty()和size()的前提是,list是一个空集合,而不是null,所以为了避免异常,建议在使用或赋值list集合之前,做一次空集合创建处理,进行内存空间分配,即:

    List list2 = new ArrayList()

    list.isEmpty()和list.size()==0 没有区别, isEmpty()判断有没有元素,而size()返回有几个元素,如果判断一个集合有无元素,建议用isEmpty()方法. 这清晰,简明

    • null判断 
      list等于null,可理解为没有对list集合分配内存空间,实际上压根就不存在。

    建议

    所以,两者之间的区别,你懂了吧? 

    建议在编码时,采用:

    if(list != null && !list.isEmpty()){
        这个里面取list中的值
    }else{
        做其他处理
    }


    展开全文
  • list集合空或null区别

    千次阅读 2019-09-10 22:50:33
    集合已经创建出来了,但是没有存入东西,就空。 如List list = new ArrayList();此时listlist.size()==0 list.isEmpty()true list==null 还没有对list分配内存空间,list还不存在 ...

    list集合为空

    为list分配了内存空间!
    集合已经创建出来了,但是没有存入东西,就为空。
    如List list = new ArrayList();此时list就为空

    • list.size()==0
    • list.isEmpty()为true

    list==null

    还没有对list分配内存空间,list还不存在

    展开全文
  • java判断list为null,又要判断size>0

    千次阅读 2015-05-04 22:37:58
    这样的list为null,但是size=0,这样的集合对于之后的判断是没用的,甚至是报异常,如list.get(0.....n)这样的取值判断,就会报异常。 所以判断时候往往要双重判断。即list!=null && list.size()>0才好。 容器...
    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。

     

     

     

    展开全文
  • Java中list集合空或为null的区别

    千次阅读 2018-03-01 14:44:20
    javaWeb项目,调用第三方系统获取第三方数据库数据时 list 集合没有数据时 后台报空指针 后来发现原因:后台查询数据库总记录数0(数据库确实无数据)时,我直接设置查询对象集合list为null, 然后返给页面了,...
  • [Java]list集合空或为null的区别

    千次阅读 2019-01-15 20:55:43
    判断一个list集合是否空,我们的惯性思维是判断list是否等于null即可,但是在Java中,list集合空还是为null,这是两码事。 引用 举个形象的例子,我有一个空着的水杯(list),而你没有,那你是null,我的size...
  • list.clear()与list = null 区别

    千次阅读 2019-01-15 11:08:22
    在使用list 结合的时候习惯了 list=null ;在创建这样的方式,但是发现使用list的clear 方法很不错,尤其是有大量循环的时候 1、list 接口 的ArrayList 类的clear() 方法源码 如下: /**   * Removes all...
  • 要搞清楚这个问题,首先要知道如何正确的遍历List删除元素。注:下述代码完整版附在末尾。 先给出这次测试的list初始化结构: list.add("a"); list.add("b"); list.add("b"); list.add("c"); list.add(...
  • 此时list为未定义状态,不可以使用System.out.println();直接输出,不能使用isEmpty()等方法,输出结果如图。 list初始化: ①List list = null; 此时的list没有指向地址,但可以进行输出打印.
  • List循环中删除元素

    千次阅读 2018-08-17 17:03:50
    普通的循环中是不能删除元素的,如下 import java.util.ArrayList; import java.util.List; import org.apache.commons.lang3.StringUtils; import org.junit.Before; import org.junit.Test; public class ...
  • List 中去除null方法

    千次阅读 2014-12-16 12:02:11
    先看下面的程序段: Java代码  ...public static void... List&lt;Integer&gt; arrays = new ArrayList&lt;Integer&gt;();   arrays.add(2);   arrays.add(null);   arrays....
  • 用子类list集合存储父类list集合中的元素,子类继承父类
  • 比如:我们有一批学生对象,每个学生都有自己的年龄属性,但是我们想要筛选出这一批学生中年龄21和22的所有学生,我们就需要对这一批学生集合中的数据进行按条件的筛选,得到我们想要的结果。 创建学生实体类: ...
  • Java8 List集合过滤出符合条件的List元素集合 新增实体类 public class Student { private Integer stuNum; // 学号 private String name; // 姓名 private Integer age; // 年龄 省略set get 或加 @Data...
  • 终于,我读懂了所有Java集合——List

    千次阅读 多人点赞 2019-12-03 14:11:11
    在执行插入元素时可能要扩容,在删除元素时并不会减小数组的容量,在查找元素时要遍历数组,对于非null元素采取equals的方式寻找。 是非线程安全的。 注意点: (1)ArrayList随机存取元素时间复杂度O(1),插入...
  • foreach遍历list删除元素一定会报错?

    千次阅读 多人点赞 2019-05-29 11:09:39
    foreach遍历list集合删除某些元素一定会报错吗? 先上一段代码: List list = new ArrayList(); list.add("1"); list.add("2"); list.add("3"); list.add("4"); list.add("5"); for (String item : list) { if ...
  • 解释下ArrayList集合啥允许值为null

    千次阅读 2019-09-15 09:47:20
    ArrayList<Integer> list =new ArrayList<>(); list.add(1); list.add(5); list.add(2);...list.add(null); 以上面的一段代码例:集合里规定,泛型里面只能给的类型是引用的类型,这就...
  • foreach遍历list删除元素一定会报错?

    万次阅读 多人点赞 2016-08-01 18:42:23
    list集合平常自以为用的非常熟了,原来只是用add()方法熟练而已,碰到...来,给list集合删除某些元素,先上一段代码:  1)报错啦  List list = new ArrayList(); list.add("1"); list.add("2"); list.add("3")
  • 相信大家对集合遍历再熟悉不过了,这里总结一下HashMap和List的遍历方法,以及它们该如何实现遍历删除。 这里对于每种遍历删除出现的问题的原因都给出了详解! (一)List的遍历方法及如何实现遍历删除 我们造一个...
  • 高效筛选两个List中的不同的元素

    千次阅读 2017-11-16 17:25:28
    问题记录: 开发过程中,需要把两个List中不同的元素筛选出来,这两个List的数据量都很大,如果按照一般的方法,分别去遍历两个...即把List元素作为Map的Key,Entry的ValueInteger类型,用于记录元素在两个集合中出
  • Guava 指南 之「使用和避免 null

    千次阅读 2017-09-16 15:42:47
    使用和避免null ...通过研究谷歌的代码,我们发现:95% 的集合不接受null作为元素,因此相比于默默地接受null,使用快速失败的操作拒绝null值对开发者更有帮助。此外,null的模糊性会让人很不爽。我们很难知道返
  • 比如下面的代码String[] arr = ...java中对象引用放在栈中,对象的实例放于堆中,一个对象要是只声明不赋值,则只会在内存的栈区创建引用,堆中并无此引用的指向。 而null对象在堆中会被java的垃圾回收机制回收。关于n
  • Java中数组为null 和数组长度0的区别

    千次阅读 多人点赞 2019-03-23 16:47:06
    java中数组空和数组长度0的区别(注意是坑) CollectionUtils工具类 https://blog.csdn.net/qq_33146717/article/details/80268688 CollectionUtils 在 import org.apache.commons.collections.CollectionUtils...
  • 但是在写的时候发现每个is都不为null但是用BufferadImage去读取时发现 image是null的而且不会抛出任何异常,一开始我以为是is被我提前关闭了,然后把所有关闭is的代码都注释了,结果还是不行。后来我尝试在集合中add....
  • 最近做项目,被要求将全国所有省份在页面中展示出来,但是要求 1、字少的三个省份占一行 2、字多的两个省份占一行 ... campus_list_provence(HttpServletRequest request,HttpServletResponse response)t...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 292,885
精华内容 117,154
关键字:

创建所有元素为null的list