From 2d0ab4740c2cf4d6a79fa79bce9c603106c5a22c Mon Sep 17 00:00:00 2001 From: Juergen Hoeller Date: Tue, 24 Oct 2017 13:16:47 +0200 Subject: [PATCH] Consistent hasText checks for CharSequence vs String Directly inlined hasLength implementations for proper nullability detection in IntelliJ, assuming a hasText checked value is never null afterwards. Since the JVM is going to do this at runtime anyway, this is effectively equivalent but more indicative for source code introspection algorithms. Issue: SPR-15540 --- .../src/main/java/org/springframework/util/StringUtils.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/spring-core/src/main/java/org/springframework/util/StringUtils.java b/spring-core/src/main/java/org/springframework/util/StringUtils.java index fffd8d4968f..37d83b864ab 100644 --- a/spring-core/src/main/java/org/springframework/util/StringUtils.java +++ b/spring-core/src/main/java/org/springframework/util/StringUtils.java @@ -139,7 +139,7 @@ public abstract class StringUtils { * @see Character#isWhitespace */ public static boolean hasText(@Nullable CharSequence str) { - return (hasLength(str) && containsText(str)); + return (str != null && str.length() > 0 && containsText(str)); } /** @@ -153,7 +153,7 @@ public abstract class StringUtils { * @see #hasText(CharSequence) */ public static boolean hasText(@Nullable String str) { - return (hasLength(str) && containsText(str)); + return (str != null && !str.isEmpty() && containsText(str)); } private static boolean containsText(CharSequence str) {