当前位置:网站首页>还在用==0 null equal 判断空值吗,对isEmpty 和 isBlank有多少了解呢
还在用==0 null equal 判断空值吗,对isEmpty 和 isBlank有多少了解呢
2022-07-26 01:58:00 【凌晨里的无聊人】
也许你两个都不知道,也许你除了
isEmpty/ isNotEmpty/
isNotBlank/isBlank外,并不知道还有
isAnyEmpty/isNoneEmpty/
isAnyBlank/isNoneBlank的存在,
come on ,让我们一起来探索org.apache.commons.lang3.StringUtils;这个工具类。

StringUtils的其他方法
可以参考官方的文档,里面有详细的描述,有些方法还是很好用的。
https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html
上面是一些方法的介绍,接下来将举例其中的一些方法
isEmpty系列
1 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
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
isBank系列
StringUtils.isBlank()
是否为真空值(空格或者空值)
StringUtils.isBlank(null) = true
StringUtils.isBlank("") = true
StringUtils.isBlank(" ") = true
StringUtils.isBlank("bob") = false
StringUtils.isBlank(" bob ") = false
StringUtils.isNotBlank()
是否真的不为空,不是空格或者空值 ,相当于!isBlank();
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
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
本文参考于微信公众号: JAVA葵花宝典
边栏推荐
- Analysis of zeromq
- Phoenix中常用shell操作
- How does Flink SQL configure to print the insert parameter log
- 大佬们, flinksql datahub源表,源表有字段 timestamp 16位, 写入Ora
- The e-commerce project is written in the resume. How to answer it during the interview
- CPU的三种模式
- Implementation of C iterator
- Redis6.x配置参数详解
- 【深入浅出玩转FPGA学习11----Testbench书写技巧2】
- 【LeetCode】32、 最长有效括号
猜你喜欢

怎么使用宝塔面板把node全栈项目部署到服务器上

Zhinai buys melons (DP backpack)

mysql 事务隔离级别

pt-onnx-ncnn转换的问题记录(接yolov5训练)

Maximum side length of elements and squares less than or equal to the threshold (source: leetcode)

There is no setter method in grpc list under flutter. How to use related attributes

3、 Pinda general permission system__ pd-tools-swagger2

Image batch processing Gaussian filter noise reduction + peak signal-to-noise ratio calculation

保护系统日志服务器和设备

The SQL script generated by powerdispatcher model runs incorrectly
随机推荐
给RestTemplate添加拦截器记录请求响应,还需解决流只读一次的问题
Detailed explanation of redis6.x configuration parameters
P3166 number triangle (tolerance and exclusion +gcd)
D. Rating compression (thinking + double pointer)
AUTOCAD——计算面积的方法
vite 本地运行首次进入页面加载慢问题
dataframe 修改某行某列位置的值
劳驾问一下各位老师 oracle 到pg cdc oracle 那边字段大写 pg 这边小写 同
学习笔记:原码, 反码, 补码
Dataframe modifies the value of a row or column position
Jupiter notebook reported an error: notebook validation failed: non unique cell ID '2a4xx6' detected
pdf. JS introduction
【深入浅出玩转FPGA学习11----Testbench书写技巧2】
Cross Site Request Forgery (CSRF): impact, examples, and Prevention
What is the difference between for... In... And for... Of
Implementation of C iterator
AutoCAD -- Method of calculating area
excel中怎么显示数字/英文时间
我mysql to mysql数据表同步,代码上只有写在第一个顺序上的生效 其余的不生效,这个可能是
[independent station construction] Shopify seller: learn these points and double the sales volume of online stores!