• java中判断集合是否为空


    0 写在前面

    最近接触集合比较多,经常对于集合是否为空做判断,目前了解的有三种方法,所以记录一下。

    分别为:

    list.size()
    list.isEmpty()
    CollectionUtils.isEmpty(listName)
    
    • 1
    • 2
    • 3

    1 list.size()

    这个方法是初学的时候用的比较多的,我们用伪代码复刻一下:集合名称.size()

    		List<Object> listName = new ArrayList<>();
            
            //判断集合长度是否为空
            if (listName.size() == 0) {
                System.out.println("集合为空");
            }
            if (listName.size() > 0) {
                System.out.println("集合不为空");
            }
            System.out.println(listName.size() == 0);//true
            System.out.println(listName.size() > 0);//false
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    输出:

    集合为空
    true
    false

    2 list.isEmpty()

    这个方法是集合集成到自身的方法,如果有空可以看一下List.java的源码

    用伪代码举例:集合名称.isEmpty()

    List<Object> listName = new ArrayList<>();
    
    if (listName.isEmpty()) {
        System.out.println("集合为空");
    }
    
    System.out.println(listName.isEmpty());//true
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    输出:

    集合为空
    true

    3 CollectionUtils.isEmpty()

    这个使用到了spring的工具类,需要提前引入依赖

    import org.springframework.util.CollectionUtils;
    
    • 1

    用伪代码举例:CollectionUtils.isEmpty(集合名称)

    List<Object> listName = new ArrayList<>();
    
    if (CollectionUtils.isEmpty(listName)) {
        System.out.println("集合为空");
    }
    
    System.out.println(CollectionUtils.isEmpty(listName));//true
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    输出:

    集合为空
    true

    4 注意事项

    ①在使用list.isEmpty()时,如果集合=null。则会报空指针异常

    举例:

    List<Object> listName = new ArrayList<>();
    listName=null;
    if (listName.isEmpty()){
        System.out.println("集合为空");
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    最后总结:最好使用**CollectionUtils.isEmpty()**的方式去判断集合是否为空。

  • 相关阅读:
    如何实现LIN多通道测试
    指令系统(408)
    PMI-ACP练习题(25)
    Android 外接设备获取驱动和获取申请权限
    深度学习知识点
    jeecgboot新建module项目包
    springboot森林生物调查系统的设计与实现毕业设计源码301826
    如何在 Windows 上安装 Docker Desktop
    Web UI自动化测试专栏博客汇总
    信贷业务中一大最重要的指标数据测算
  • 原文地址:https://blog.csdn.net/weixin_45909221/article/details/127527645