123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174 |
- package com.fuzamei.util;
- public final class StringUtil {
- private StringUtil() {
- throw new AssertionError("不能实例化 StringUtil");
- }
- // Empty checks
- //-----------------------------------------------------------------------
- /**
- * 检查CharSequence是否为empty ("")或null
- *
- * StringUtil.isEmpty(null) = true
- * StringUtil.isEmpty("") = true
- * StringUtil.isEmpty(" ") = false
- * StringUtil.isEmpty("bob") = false
- * StringUtil.isEmpty(" bob ") = false
- *
- * @param cs 待测字符序列
- * @return 待测序列是否为empty或null
- */
- public static boolean isEmpty(final CharSequence cs) {
- return cs == null || cs.length() == 0;
- }
- /**
- * 检查CharSequence是否不为empty ("")或null
- *
- * StringUtil.isNotEmpty(null) = false
- * StringUtil.isNotEmpty("") = false
- * StringUtil.isNotEmpty(" ") = true
- * StringUtil.isNotEmpty("bob") = true
- * StringUtil.isNotEmpty(" bob ") = true
- *
- * @param cs 待测字符序列
- * @return 待测序列是否不为empty或null
- */
- public static boolean isNotEmpty(final CharSequence cs) {
- return !isEmpty(cs);
- }
- /**
- * 检测CharSequence中是否有任意一个为empty ("")或null
- *
- * StringUtil.isAnyEmpty(null) = true
- * StringUtil.isAnyEmpty(null, "foo") = true
- * StringUtil.isAnyEmpty("", "bar") = true
- * StringUtil.isAnyEmpty("bob", "") = true
- * StringUtil.isAnyEmpty(" bob ", null) = true
- * StringUtil.isAnyEmpty(" ", "bar") = false
- * StringUtil.isAnyEmpty("foo", "bar") = false
- *
- * @param css 待测字符序列
- * @return 待测序列是否有任意一个为empty或null
- */
- public static boolean isAnyEmpty(final CharSequence... css) {
- if (ArrayUtil.isEmpty(css)) {
- return true;
- }
- for (final CharSequence cs : css){
- if (isEmpty(cs)) {
- return true;
- }
- }
- return false;
- }
- /**
- * 检测CharSequence中是否都不为empty ("")或null
- *
- * StringUtil.isNoneEmpty(null) = false
- * StringUtil.isNoneEmpty(null, "foo") = false
- * StringUtil.isNoneEmpty("", "bar") = false
- * StringUtil.isNoneEmpty("bob", "") = false
- * StringUtil.isNoneEmpty(" bob ", null) = false
- * StringUtil.isNoneEmpty(" ", "bar") = true
- * StringUtil.isNoneEmpty("foo", "bar") = true
- *
- * @param css 待测字符序列
- * @return 待测序列是否都不为empty或null
- */
- public static boolean isNoneEmpty(final CharSequence... css) {
- return !isAnyEmpty(css);
- }
- /**
- * 检测CharSequence中是否为whitespace空字符或empty ("")或null
- *
- * StringUtil.isBlank(null) = true
- * StringUtil.isBlank("") = true
- * StringUtil.isBlank(" ") = true
- * StringUtil.isBlank("bob") = false
- * StringUtil.isBlank(" bob ") = false
- *
- * @param cs 待测字符序列
- * @return 待测序列是否为whitespace空字符或empty或null
- */
- 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))) {
- return false;
- }
- }
- return true;
- }
- /**
- * 检测CharSequence中是否不为whitespace空字符或empty ("")或null
- *
- * StringUtil.isNotBlank(null) = false
- * StringUtil.isNotBlank("") = false
- * StringUtil.isNotBlank(" ") = false
- * StringUtil.isNotBlank("bob") = true
- * StringUtil.isNotBlank(" bob ") = true
- *
- * @param cs 待测字符序列
- * @return 待测序列是否不为whitespace空字符或empty或null
- */
- public static boolean isNotBlank(final CharSequence cs) {
- return !isBlank(cs);
- }
- /**
- * 检测CharSequence中是否有任意一个为whitespace空字符或empty ("")或null
- *
- * StringUtil.isAnyBlank(null) = true
- * StringUtil.isAnyBlank(null, "foo") = true
- * StringUtil.isAnyBlank(null, null) = true
- * StringUtil.isAnyBlank("", "bar") = true
- * StringUtil.isAnyBlank("bob", "") = true
- * StringUtil.isAnyBlank(" bob ", null) = true
- * StringUtil.isAnyBlank(" ", "bar") = true
- * StringUtil.isAnyBlank("foo", "bar") = false
- *
- * @param css 待测字符序列
- * @return 待测序列是否有任意一个为whitespace空字符或empty或null
- */
- public static boolean isAnyBlank(final CharSequence... css) {
- if (ArrayUtil.isEmpty(css)) {
- return true;
- }
- for (final CharSequence cs : css){
- if (isBlank(cs)) {
- return true;
- }
- }
- return false;
- }
- /**
- * 检测CharSequence中是否都不为whitespace空字符或empty ("")或null
- *
- * StringUtil.isNoneBlank(null) = false
- * StringUtil.isNoneBlank(null, "foo") = false
- * StringUtil.isNoneBlank(null, null) = false
- * StringUtil.isNoneBlank("", "bar") = false
- * StringUtil.isNoneBlank("bob", "") = false
- * StringUtil.isNoneBlank(" bob ", null) = false
- * StringUtil.isNoneBlank(" ", "bar") = false
- * StringUtil.isNoneBlank("foo", "bar") = true
- *
- * @param css 待测字符序列
- * @return 待测序列是否都不为whitespace空字符或empty或null
- */
- public static boolean isNoneBlank(final CharSequence... css) {
- return !isAnyBlank(css);
- }
- }
|