From 6ecf27a1cb97b395a0a35cdb28416ed02268db35 Mon Sep 17 00:00:00 2001 From: VampireAchao Date: Fri, 8 Oct 2021 18:36:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=BD=E5=8F=96"undefined"=E4=B8=BA=E5=B8=B8?= =?UTF-8?q?=E9=87=8F=EF=BC=8C=E6=96=B0=E5=A2=9EisNullOrUndefinedStr?= =?UTF-8?q?=E5=92=8CisBlankOrUndefined=E5=8F=96=E5=8F=8D=EF=BC=8C=E4=B8=BB?= =?UTF-8?q?=E8=A6=81=E7=94=A8=E4=BA=8Elambda=E5=8F=8C=E5=86=92=E5=8F=B7?= =?UTF-8?q?=E7=AE=80=E5=86=99=E5=9C=BA=E6=99=AF=E4=B8=8B=EF=BC=8C=E6=B2=A1?= =?UTF-8?q?=E6=9C=89=E8=BF=99=E4=BF=A9=E5=87=BD=E6=95=B0=EF=BC=8C=E6=88=91?= =?UTF-8?q?=E5=B0=B1=E5=BE=97=E5=86=99=E7=AE=AD=E5=A4=B4=E5=87=BD=E6=95=B0?= =?UTF-8?q?=E4=BA=86=E3=80=82=E3=80=82=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/hutool/core/text/CharSequenceUtil.java | 43 +++++++++++++------ 1 file changed, 30 insertions(+), 13 deletions(-) diff --git a/hutool-core/src/main/java/cn/hutool/core/text/CharSequenceUtil.java b/hutool-core/src/main/java/cn/hutool/core/text/CharSequenceUtil.java index 8c3974915..eef69acec 100644 --- a/hutool-core/src/main/java/cn/hutool/core/text/CharSequenceUtil.java +++ b/hutool-core/src/main/java/cn/hutool/core/text/CharSequenceUtil.java @@ -7,22 +7,12 @@ import cn.hutool.core.lang.Assert; import cn.hutool.core.lang.Filter; import cn.hutool.core.lang.Matcher; import cn.hutool.core.lang.func.Func1; -import cn.hutool.core.util.ArrayUtil; -import cn.hutool.core.util.CharUtil; -import cn.hutool.core.util.CharsetUtil; -import cn.hutool.core.util.DesensitizedUtil; -import cn.hutool.core.util.NumberUtil; -import cn.hutool.core.util.ReUtil; -import cn.hutool.core.util.StrUtil; +import cn.hutool.core.util.*; import java.nio.ByteBuffer; import java.nio.charset.Charset; import java.text.MessageFormat; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.LinkedList; -import java.util.List; -import java.util.Set; +import java.util.*; import java.util.function.Function; import java.util.function.Predicate; @@ -42,6 +32,11 @@ public class CharSequenceUtil { */ public static final String NULL = "null"; + /** + * 字符串常量:{@code "undefined"} + */ + public static final String UNDEFINED = "undefined"; + /** * 字符串常量:空字符串 {@code ""} */ @@ -494,6 +489,17 @@ public class CharSequenceUtil { return isNullOrUndefinedStr(str); } + /** + * 检查字符串是否不为null、空白串、“null”、“undefined” + * + * @param str 被检查的字符串 + * @return 是否不为null、空白串、“null”、“undefined” + * 不为null、空白串、“null”、“undefined”返回true,否则返回false + */ + public static boolean isNotBlankOrUndefined(CharSequence str) { + return !isBlankOrUndefined(str); + } + /** * 是否为“null”、“undefined”,不做空指针检查 * @@ -502,7 +508,18 @@ public class CharSequenceUtil { */ private static boolean isNullOrUndefinedStr(CharSequence str) { String strString = str.toString().trim(); - return NULL.equals(strString) || "undefined".equals(strString); + return NULL.equals(strString) || UNDEFINED.equals(strString); + } + + /** + * 是否不为“null”、“undefined”,不做空指针检查 + * + * @param str 字符串 + * @return 是否不为“null”、“undefined”,不为“null”、“undefined”返回true,否则false + */ + private static boolean isNotNullAndNotUndefinedStr(CharSequence str) { + String strString = str.toString().trim(); + return !NULL.equals(strString) && !UNDEFINED.equals(strString); } // ------------------------------------------------------------------------ Trim