【JAVA基础】StringUtils.isEmpty、StringUtils.isBlank()、Objects.isNull()三者区别

📝个人主页🌹:个人主页
⏩收录专栏⏪:日常经验
🌹🌹期待您的关注 🌹🌹,让我们共同进步!
在这里插入图片描述

总是区分不清楚这几个的差别:我们来直接验证一下:

package com.atguigu.signcenter.controller;

import com.atguigu.signcenter.annotation.ExistsApiToken;
import com.atguigu.signcenter.annotation.VerifySign;
import com.atguigu.signcenter.constant.ReqParameterConstant;
import com.atguigu.signcenter.entity.User1;
import com.atguigu.signcenter.service.SecurityUtilTestService;
import com.atguigu.signcenter.util.testUtil;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import java.io.UnsupportedEncodingException;
import java.util.*;

/**
 *    原文链接:https://blog.csdn.net/weixin_47560078/article/details/118222785
 *   @author: jd
 * @create: 2024-07-30
 */

@Slf4j
@Controller
public class TestController {

    public static void main(String[] args) {
        //判断某字符串是否为空或长度为0或由空白符(whitespace)构成
        System.out.println("=========isBlank=========");
        System.out.println("StringUtils.isBlank(null) = " + StringUtils.isBlank(null)); //true
        System.out.println("StringUtils.isBlank(\"\") = " + StringUtils.isBlank("")); //true
        System.out.println("StringUtils.isBlank(\" \") = " + StringUtils.isBlank(" ")); //true
        System.out.println("StringUtils.isBlank(\"\\t \\n \\f \\r\") = " + StringUtils.isBlank("\t \n \f \r")); // true
        System.out.println("StringUtils.isBlank(\"\\b\") = " + StringUtils.isBlank("\b")); //false
        System.out.println("StringUtils.isBlank(\"bob\") = " + StringUtils.isBlank("bob")); //false
        System.out.println("StringUtils.isBlank(\" bob \") = " + StringUtils.isBlank(" bob ")); //false
        System.out.println("=========isNotBlank=========");
        //判断某字符串是否不为空且长度不为0且不由空白符(whitespace)构成,等于!isBlank(String str)
        System.out.println("StringUtils.isNotBlank(null) = " + StringUtils.isNotBlank(null));
        System.out.println("StringUtils.isNotBlank(\"\") = " + StringUtils.isNotBlank(""));
        System.out.println("StringUtils.isNotBlank(\" \") = " + StringUtils.isNotBlank(" "));
        System.out.println("StringUtils.isNotBlank(\" \") = " + StringUtils.isNotBlank(" "));
        System.out.println("StringUtils.isNotBlank(\"\\t \\n \\f \\r\") = " + StringUtils.isNotBlank("\t \n \f \r"));
        System.out.println("StringUtils.isNotBlank(\"\\b\") = " + StringUtils.isNotBlank("\b"));
        System.out.println("StringUtils.isNotBlank(\"bob\") = " + StringUtils.isNotBlank("bob"));
        System.out.println("StringUtils.isNotBlank(\" bob \") = " + StringUtils.isNotBlank(" bob "));


        System.out.println("=========isEmpty=========");
        //判断某字符串是否为空,为空的标准是str==null或str.length()==0
        System.out.println("StringUtils.isEmpty(null) = " + StringUtils.isEmpty(null)); //true
        System.out.println("StringUtils.isEmpty(\"\") = " + StringUtils.isEmpty("")); //true
        System.out.println("StringUtils.isEmpty(\" \") = " + StringUtils.isEmpty(" ")); //false
        System.out.println("StringUtils.isEmpty(\"bob\") = " + StringUtils.isEmpty("bob")); //false
        System.out.println("StringUtils.isEmpty(\" bob \") = " + StringUtils.isEmpty(" bob ")); //false


        //只会检查传入的对象是否为null。如果对象为null,则返回true,否则返回false
        System.out.println("Objects.isNull(null) = " + Objects.isNull(null)); //true
        System.out.println("Objects.isNull(\"\") = " + Objects.isNull("")); //false
        System.out.println("Objects.isNull(\"aaa\") = " + Objects.isNull("aaa")); //false

        

    }


}

结果

=========isBlank=========
StringUtils.isBlank(null) = true
StringUtils.isBlank("") = true
StringUtils.isBlank(" ") = true
StringUtils.isBlank("\t \n \f \r") = true
StringUtils.isBlank("\b") = false
StringUtils.isBlank("bob") = false
StringUtils.isBlank(" bob ") = false
=========isNotBlank=========
StringUtils.isNotBlank(null) = false
StringUtils.isNotBlank("") = false
StringUtils.isNotBlank(" ") = false
StringUtils.isNotBlank(" ") = false
StringUtils.isNotBlank("\t \n \f \r") = false
StringUtils.isNotBlank("\b") = true
StringUtils.isNotBlank("bob") = true
StringUtils.isNotBlank(" bob ") = true
=========isEmpty=========
StringUtils.isEmpty(null) = true
StringUtils.isEmpty("") = true
StringUtils.isEmpty(" ") = false
StringUtils.isEmpty("bob") = false
StringUtils.isEmpty(" bob ") = false
=========Objects.isNull=========
Objects.isNull(null) = true
Objects.isNull("") = false
Objects.isNull("aaa") = false

总结:
我这里对于判空和判断非空都验证了,其实只是记住一方面即可。
判断是null的范围,从粗到细 isBlank < isEmpty < isNUll
//所以总结一下,isBlank的筛选是最粗的,对于null “” “ ” 都是空的,这三个区分不出来,都是true
// isEmpty 则能把null 和“” 这两个区分不出来,都是 true
//isNull 则是最细的 只有真正的null是true,否则是false

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

执键行天涯

码你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值