• Java判断字符串、对象、list是否为空总结


    1.Java 判断字符串是否为空的方法

    方法一:用的比较多

    if( str == null || str.equals("")){
        System.out.println("success");
    }
    
    • 1
    • 2
    • 3

    方法二:效率高

    if(str == null || str.length() == 0){
       System.out.println("success");
    }
    
    • 1
    • 2
    • 3

    方法三:工具类,需要先引入工具包。
    引入依赖包如下:

    <dependency>
        <groupId>org.apache.commonsgroupId>
        <artifactId>commons-lang3artifactId>
        <version>3.1version>
    dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    import org.apache.commons.lang3.StringUtils;
    if(StringUtils.isEmpty(str)){
        System.out.println("success");
    }
    
    • 1
    • 2
    • 3
    • 4

    关于方法一踩过的坑如下:
    (1)抄错了网上的代码,写成了(1),就报空指针异常。null在Java中就是不存在的意思,一个不存在的东西肯定没有.equals方法,所以报了空指针异常。
    (2)先判断了null,走到str.equals()的时候就不会有null.equals这样的判断,就不会报错,一定要写str.equals(“”)的话,就需要把str.equals(“”)放在后面。
    (3)“”.equals(str),""是字符串,字符串有equals()方法,所以也不会报错。

    public class Judge {
        public static void main(String[] args) {
            String str = null;
            if(str.equals("") || str == null){ //抛出空指针异常(1)
                  System.out.println("success");
            }
            if(str == null || str.equals("")){ //输出success(2)
                System.out.println("success");
            }
            if("".equals(str) || str == null){ //输出success(3)
                  System.out.println("success");
            }
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    总结判断思想:判断这个串是不是存在,如果存在是不是一个空串。
    关于方法三:
    它的源码如下,点进去其实是方法二。

        public static boolean isEmpty(CharSequence value) {
            return value == null || value.length() == 0;
        }
    
    • 1
    • 2
    • 3

    2.Java 判断list是否为空的方法:

    方法一:同样需要把null判断放在前面,不然会抛出空指针异常。

    ArrayList list = new ArrayList();
    list=null;
    if(null == list || list.size() ==0 ){//输出success
        System.out.println("success");
    }
    if(list.size() == 0 ||  null == list){//抛出空指针异常
        System.out.println("success");
     }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    把list想象成一个装饼干的小罐头,null判断这个小罐头是不是存在的,list.size()判断里面有没有小饼干。

    方法二:使用CollectionUtils工具类

    import org.apache.commons.collections.CollectionUtils;
    if (CollectionUtils.isEmpty(list)){
       System.out.println("success");
    }
    
    • 1
    • 2
    • 3
    • 4

    它的源码为

     public static boolean isEmpty(Collection coll) {
            return coll == null || coll.isEmpty();
     }
    
    • 1
    • 2
    • 3

    方法二其实是和法一是一样的,用来判空的时候,list.isEmpty()和list.size()==0 没有区别,isEmpty()判断有没有元素,而size()返回有几个元素,list.isEmpty()就表示没有元素,list.size() ==0时也是没有元素。如果判断一个集合有无元素, 建议用isEmpty()方法。

    3.Java判断对象是否为空的方法

     Cat cat = new Cat();
     cat = null;
     if (cat == null){//用null判断
         System.out.println("success");//输出success
     }
    
    • 1
    • 2
    • 3
    • 4
    • 5

    参考文章:
    java中常用的空判断
    java之list集合判空的几种方式

  • 相关阅读:
    Latex语法学习07:绘制数学坐标系
    毕业三年就百万年薪,难道这就是大厂程序员吗?
    2022的七夕,奉上7个精美的表白代码,同时教大家快速改源码自用
    VGG论文
    【nuxt】插件集合
    【6k字】详解Python装饰器和生成器
    day36-单元测试
    java版工程管理系统Spring Cloud+Spring Boot+Mybatis实现工程管理系统
    PRBP20P-10/250C-EB、PRDP6G-10/30-CB电液比例直动式先导减压阀放大板
    PostgreSQL之SQL高级特性
  • 原文地址:https://blog.csdn.net/trh_csdn/article/details/126065291