当前位置: 首页 > news >正文

isEmpty 和 isBlank 的区别

isEmpty系列

StringUtils.isEmpty()

是否为空. 可以看到 " " 空格是会绕过这种空判断,因为是一个空格,并不是严格的空值,会导致 ​​isEmpty(" ")=false​

StringUtils.isEmpty(null) = true
StringUtils.isEmpty("") = true
StringUtils.isEmpty(" ") = false
StringUtils.isEmpty(“bob”) = false
StringUtils.isEmpty(" bob ") = false
/** <p>NOTE: This method changed in Lang version 2.0.* It no longer trims the CharSequence.* That functionality is available in isBlank().</p>** @param cs  the CharSequence to check, may be null* @return {@code true} if the CharSequence is empty or null* @since 3.0 Changed signature from isEmpty(String) to isEmpty(CharSequence)*/
public static boolean isEmpty(final CharSequence cs) {return cs == null || cs.length() == 0;
}

StringUtils.isNotEmpty()

相当于不为空 , ​​= !isEmpty()​

public static boolean isNotEmpty(final CharSequence cs) {return !isEmpty(cs);}

StringUtils.isAnyEmpty()

是否有一个为空,只有一个为空,就为true.

StringUtils.isAnyEmpty(null) = true
StringUtils.isAnyEmpty(null, “foo”) = true
StringUtils.isAnyEmpty("", “bar”) = true
StringUtils.isAnyEmpty(“bob”, “”) = true
StringUtils.isAnyEmpty(" bob ", null) = true
StringUtils.isAnyEmpty(" ", “bar”) = false
StringUtils.isAnyEmpty(“foo”, “bar”) = false
/* @param css  the CharSequences to check, may be null or empty* @return {@code true} if any of the CharSequences are empty or null* @since 3.2*/
public static boolean isAnyEmpty(final CharSequence... css) {if (ArrayUtils.isEmpty(css)) {return true;}for (final CharSequence cs : css){if (isEmpty(cs)) {return true;}}return false;
}

StringUtils.isNoneEmpty()

相当于​​!isAnyEmpty(css)​​ , 必须所有的值都不为空才返回true

/* <p>Checks if none of the CharSequences are empty ("") or null.</p>** <pre>* StringUtils.isNoneEmpty(null)             = false* StringUtils.isNoneEmpty(null, "foo")      = false* StringUtils.isNoneEmpty("", "bar")        = false* StringUtils.isNoneEmpty("bob", "")        = false* StringUtils.isNoneEmpty("  bob  ", null)  = false* StringUtils.isNoneEmpty(" ", "bar")       = true* StringUtils.isNoneEmpty("foo", "bar")     = true* </pre>** @param css  the CharSequences to check, may be null or empty* @return {@code true} if none of the CharSequences are empty or null* @since 3.2*/
public static boolean isNoneEmpty(final CharSequence... css) {

isBank系列

StringUtils.isBlank()

是否为真空值(空格或者空值)

StringUtils.isBlank(null) = true
StringUtils.isBlank("") = true
StringUtils.isBlank(" ") = true
StringUtils.isBlank(“bob”) = false
StringUtils.isBlank(" bob ") = false
/* <p>Checks if a CharSequence is whitespace, empty ("") or null.</p>* @param cs  the CharSequence to check, may be null* @return {@code true} if the CharSequence is null, empty or whitespace* @since 2.0* @since 3.0 Changed signature from isBlank(String) to isBlank(CharSequence)*/
public static boolean isBlank(final CharSequence cs) {int strLen;if (cs == null || (strLen = cs.length()) == 0) {return true;}for (int i = 0; i < strLen; i++) {if (Character.isWhitespace(cs.charAt(i)) == false) {return false;}}return true;
}

StringUtils.isNotBlank()

是否真的不为空,不是空格或者空值 ,相当于​​!isBlank();​

public static boolean isNotBlank(final CharSequence cs) {return !isBlank(cs);}

StringUtils.isAnyBlank()

是否包含任何真空值(包含空格或空值)

StringUtils.isAnyBlank(null) = true
StringUtils.isAnyBlank(null, “foo”) = true
StringUtils.isAnyBlank(null, null) = true
StringUtils.isAnyBlank("", “bar”) = true
StringUtils.isAnyBlank(“bob”, “”) = true
StringUtils.isAnyBlank(" bob ", null) = true
StringUtils.isAnyBlank(" ", “bar”) = true
StringUtils.isAnyBlank(“foo”, “bar”) = false
/* <p>Checks if any one of the CharSequences are blank ("") or null and not whitespace only..</p>* @param css  the CharSequences to check, may be null or empty* @return {@code true} if any of the CharSequences are blank or null or whitespace only* @since 3.2*/
public static boolean isAnyBlank(final CharSequence... css) {if (ArrayUtils.isEmpty(css)) {return true;}for (final CharSequence cs : css){if (isBlank(cs)) {return true;}}return false;
}

StringUtils.isNoneBlank()

是否全部都不包含空值或空格

StringUtils.isNoneBlank(null) = false
StringUtils.isNoneBlank(null, “foo”) = false
StringUtils.isNoneBlank(null, null) = false
StringUtils.isNoneBlank("", “bar”) = false
StringUtils.isNoneBlank(“bob”, “”) = false
StringUtils.isNoneBlank(" bob ", null) = false
StringUtils.isNoneBlank(" ", “bar”) = false
StringUtils.isNoneBlank(“foo”, “bar”) = true
/* <p>Checks if none of the CharSequences are blank ("") or null and whitespace only..</p>* @param css  the CharSequences to check, may be null or empty* @return {@code true} if none of the CharSequences are blank or null or whitespace only* @since 3.2*/
public static boolean isNoneBlank(final CharSequence... css) {return !isAnyBlank(css);
}

文章转载自:

http://o1AVd8Bt.zthLn.cn
http://mTRXabQx.zthLn.cn
http://F1qptc3M.zthLn.cn
http://nfQeJ8ZN.zthLn.cn
http://tC6cHBYK.zthLn.cn
http://cl3dYWjH.zthLn.cn
http://1rh7lRLX.zthLn.cn
http://ueq7WptO.zthLn.cn
http://FrT9Vpwd.zthLn.cn
http://zjedvfBq.zthLn.cn
http://pwH4Z53j.zthLn.cn
http://LXlH6qPk.zthLn.cn
http://MYazOoQ3.zthLn.cn
http://riLvCPA9.zthLn.cn
http://0XcmfRoh.zthLn.cn
http://790oNjV6.zthLn.cn
http://jGtV4Cha.zthLn.cn
http://p4y3fqvQ.zthLn.cn
http://tIcd6fZ5.zthLn.cn
http://DaCfpFy2.zthLn.cn
http://hBlpg45J.zthLn.cn
http://X0Ah4k7n.zthLn.cn
http://8xB4Zc2I.zthLn.cn
http://HSA6d3D6.zthLn.cn
http://R6F15TrK.zthLn.cn
http://ipnRzWwZ.zthLn.cn
http://Af3J3DKZ.zthLn.cn
http://qyKWl2mE.zthLn.cn
http://4DmOBq7S.zthLn.cn
http://HWjTiO3P.zthLn.cn
http://www.dtcms.com/a/382445.html

相关文章:

  • AAC ADTS格式分析
  • `Object.groupBy`将数组中的数据分到对象中
  • IACheck赋能AI环评报告审核,提升智慧交通项目合规性
  • 腾讯面试题之编辑距离
  • 云服务器使用代理稳定与github通信方法
  • 通过内存去重替换SQL中distinct,优化SQL查询效率
  • 【完整源码+数据集+部署教程】航拍遥感太阳能面板识别图像分割
  • make和Makefile细节补充
  • 从经验主义到贝叶斯理论:如何排查线上问题
  • 机器人路径规划算法大全RRT,APF,DS,RL
  • 9.13AI简报丨哈佛医学院开源AI模型,Genspark推出AI浏览器
  • 04.【Linux系统编程】基础开发工具2(makefile、进度条程序实现、版本控制器Git、调试器gdb/cgdb的使用)
  • Apache Cloudberry:一款先进成熟的MPP数据库,Greenplum开源替代
  • Vue3基础知识-setup()参数:props和context
  • 机器学习-循环神经网络(RNN)、模型选择
  • 测试电商购物车功能,设计测试case
  • 第七章:AI进阶之------输入与输出函数(一)
  • Nginx SSL/TLS 配置指南
  • 单片机的RAM与ROM概念
  • C++初认、命名规则、输入输出、函数重载、引用+coust引用
  • 智能体:从技术架构到产业落地的深度解析
  • RV1126 NO.22:多线程获取SMARTP的GOP模式数据和普通GOP模式数据
  • 数据的读多写少和读多写多解决方案
  • 0基础Java学习过程记录——异常
  • 几种网络IO模型
  • 文章阅读与实践 - OOM/时间精度/步数排行实现/故障复盘
  • 第七章:AI进阶之------输入与输出函数(二)
  • html列表总结补充
  • 系统软中间件:连接软件与硬件的桥梁
  • 关于Bug排查日记的技术文章大纲