StringUtil.isEmpty()与StringUtil.isBlank()的区别及说明

 更新时间:2025年10月30日 09:49:28   作者:蒲春伟  
文章介绍了Apache Commons Lang库中的StringUtils类,详细说明了isEmpty()、isNotEmpty()、isBlank()和isNotBlank()四个方法的区别和使用场景,并强调了在实际开发中,isBlank()方法最为常用,同时建议了解每个方法的原理和适用情况

1. StringUtils.isEmpty()

判断某字符串是否为空,为空的标准是str==null或str.length()==0

下面是StringUtils判断是否为空的示例:

StringUtils.isEmpty(null) = true
StringUtils.isEmpty("") = true
StringUtils.isEmpty(" ") = false
StringUtils.isEmpty("  ") = false
StringUtils.isEmpty("test") = false
StringUtils.isEmpty(" test ") = false

2. StringUtils.isNotEmpty()

判断某字符串是否非空,等于!isEmpty(String str)

下面是示例:

StringUtils.isNotEmpty(null) = false
StringUtils.isNotEmpty("") = false
StringUtils.isNotEmpty(" ") = true
StringUtils.isNotEmpty("  ") = true
StringUtils.isNotEmpty("test") = true
StringUtils.isNotEmpty(" test ") = true

3. StringUtils.isBlank()

判断某字符串是否为空或长度为0或由空白符(whitespace)构成

下面是示例:

StringUtils.isBlank(null) = true
StringUtils.isBlank("") = true
StringUtils.isBlank(" ") = true
StringUtils.isBlank("  ") = true
// 对于制表符、换行符、换页符和回车符均识为空白符
StringUtils.isBlank("\t \n \f \r") = true 
// ”\b”为单词边界符
StringUtils.isBlank("\b") = false 
StringUtils.isBlank("test") = false
StringUtils.isBlank(" test ") = false

3. StringUtils.isNotBlank()

判断某字符串是否不为空且长度不为0且不由空白符(whitespace)构成,等于!isBlank(String str)

下面是示例:

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("test") = true
StringUtils.isNotBlank(" test ") = true

4. 总结

日常过程中多数还是以使用StringUtils.isBlank()为主,但是对于技术而言还是要能够知晓为什么使用某个方法,其它方法是否有什么问题。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 一文搞懂Mybatis-plus的分页查询操作

    一文搞懂Mybatis-plus的分页查询操作

    说起分页机制,相信我们程序员都不陌生,今天,我就给大家分享一下Mybatis-plus的分页机制,供大家学习和Copy,感兴趣的可以了解一下
    2022-06-06
  • JAVA之String中删除指定字符方式(11种方法)

    JAVA之String中删除指定字符方式(11种方法)

    这篇文章主要介绍了JAVA之String中删除指定字符方式(11种方法),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • java实现文件上传的详细步骤

    java实现文件上传的详细步骤

    文件上传是用户将本地文件通过Web页面提交到服务器的过程,涉及客户端、服务器端、上传表单等组件,在SpringBoot中,通过MultipartFile接口处理上传文件,并将其保存在服务器,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-10-10
  • kotlin改善java代码实例分析

    kotlin改善java代码实例分析

    我们给大家整理了关于kotlin改善java代码的相关实例以及操作的详细方法,有需要的读者们参考下。
    2018-03-03
  • Java使用StampedLock实现高效读写功能

    Java使用StampedLock实现高效读写功能

    StampedLock 是 Java 8 引入的高性能锁,提供了三种锁模式:写锁、悲观读锁和乐观读锁,与传统的 ReentrantReadWriteLock 相比,StampedLock 更注重性能,特别适合读多写少的场景,所以本文给大家介绍了Java使用StampedLock实现高效读写功能,需要的朋友可以参考下
    2025-01-01
  • Java类继承关系中的初始化顺序实例详解

    Java类继承关系中的初始化顺序实例详解

    这篇文章主要介绍了Java类继承关系中的初始化顺序,结合实例形式详细对比分析了Java非继承关系中的初始化与继承关系中的初始化相关原理与操作技巧,需要的朋友可以参考下
    2019-09-09
  • SpringCloud动态配置注解@RefreshScope与@Component的深度解析

    SpringCloud动态配置注解@RefreshScope与@Component的深度解析

    在现代微服务架构中,动态配置管理是一个关键需求,本文将为大家介绍Spring Cloud中相关的注解@RefreshScope与@Component的使用,需要的小伙伴可以参考下
    2025-04-04
  • Java 定时器(Timer,TimerTask)详解及实例代码

    Java 定时器(Timer,TimerTask)详解及实例代码

    这篇文章主要介绍了 Java 定时器(Timer,TimerTask)详解及实例代码的相关资料,需要的朋友可以参考下
    2017-01-01
  • 详解Spring AOP 实现“切面式”valid校验

    详解Spring AOP 实现“切面式”valid校验

    本篇文章主要介绍了详解Spring AOP 实现“切面式”valid校验,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • Java中StringUtils工具类进行String为空的判断解析

    Java中StringUtils工具类进行String为空的判断解析

    这篇文章主要介绍了Java中StringUtils工具类进行String为空的判断解析,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01

最新评论