关于字符串比对的几种方法
2023-12-13 10:14:12
    		isEmpty系列
StringUtils.isEmpty()
这个方法用于判断CharSequence是否为空,即为null或长度为0。方法的实现十分简洁,通过对CharSequence的null检查和长度检查来确定是否为空。
public?static?boolean?isEmpty(final?CharSequence?cs)?{
????return?cs?==?null?||?cs.length()?==?0;
}
StringUtils.isNotEmpty()
与isEmpty()相反,该方法用于判断CharSequence是否不为空。这是一个实用的方法,通过调用isEmpty()的结果的取反来实现。
public?static?boolean?isNotEmpty(final?CharSequence?cs)?{
????return?!isEmpty(cs);
}
StringUtils.isAnyEmpty()
该方法用于判断一组CharSequence中是否至少有一个为空。通过遍历传入的CharSequence数组,检查每个元素是否为空,如果存在任何一个为空,则返回true。
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()相反,用于判断一组CharSequence是否全部不为空。通过调用isAnyEmpty()的结果的取反来实现。
public?static?boolean?isNoneEmpty(final?CharSequence...?css)?{
????return?!isAnyEmpty(css);
}
isBlank系列
StringUtils.isBlank()
isBlank()方法用于判断CharSequence是否为空白,包括null、空字符串或仅包含空格的字符串。通过遍历CharSequence中的每个字符,检查是否存在非空格字符,从而判断是否为空白。
public?static?boolean?isBlank(final?CharSequence?cs)?{
????final?int?strLen?=?length(cs);
????if?(strLen?==?0)?{
????????return?true;
????}
????for?(int?i?=?0;?i?<?strLen;?i++)?{
????????if?(!Character.isWhitespace(cs.charAt(i)))?{
????????????return?false;
????????}
????}
????return?true;
}
StringUtils.isNotBlank()
与isBlank()相反,isNotBlank()方法用于判断CharSequence是否不为空白。通过调用isBlank()的结果的取反来实现。
public?static?boolean?isNotBlank(final?CharSequence?cs)?{
????return?!isBlank(cs);
}
StringUtils.isAnyBlank()
该方法用于判断一组CharSequence中是否至少有一个为空白。通过遍历传入的CharSequence数组,检查每个元素是否为空白,如果存在任何一个为空白,则返回true。
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()
该方法与isAnyBlank()相反,用于判断一组CharSequence是否全部不为空白。通过调用isAnyBlank()的结果的取反来实现。
public?static?boolean?isNoneBlank(final?CharSequence...?css)?{
????return?!isAnyBlank(css);
}
-  Optional类:
import java.util.Optional;
public class Main {
public static void main(String[] args) {
String key = "key";
String value = Optional.ofNullable(getValue(key)).orElse("");
System.out.println("Value: " + value);
}
public static String getValue(String key) {
// 这里模拟从数据库或其他地方获取值,可能返回null或空串
return null;
}
}在这个例子中,如果getValue()方法返回null,Optional.ofNullable()会返回一个空的Optional,然后orElse("")会返回空串。
-  使用Java 8的流(Stream):
import java.util.stream.Stream;
import java.util.Optional;
import java.util.function.Supplier;
public class Main {
public static void main(String[] args) {
String key = "key";
String value = Stream.ofNullable(getValue(key)).orElseGet(Supplier.empty()).orElse("");
System.out.println("Value: " + value);
}
public static String getValue(String key) {
// 这里模拟从数据库或其他地方获取值,可能返回null或空串
return null;
}
}
    			文章来源:https://blog.csdn.net/qq_33709529/article/details/134945092
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
    	本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!