<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          isEmpty 和 isBlank 的用法區(qū)別,至少一半的人答不上來...

          共 11140字,需瀏覽 23分鐘

           ·

          2022-06-21 01:58

          點擊關(guān)注公眾號,Java干貨及時送達??

          文章來源:https://sourl.cn/dRpJ6b

          也許你兩個都不知道,也許你除了isEmpty/isNotEmpty/isNotBlank/isBlank外,并不知道還有isAnyEmpty/isNoneEmpty/isAnyBlank/isNoneBlank的存在, come on ,讓我們一起來探索org.apache.commons.lang3.StringUtils;這個工具類。

          isEmpty系列

          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 trueif 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 trueif 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

          /**
           * <p>Checks if none of the CharSequences are empty ("") or null.</p>
           *
           * <pre>
           * 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
           * </pre>
           *
           * @param css  the CharSequences to check, may be null or empty
           * @return {@code trueif none of the CharSequences are empty or null
           * @since 3.2
           */
          public static boolean isNoneEmpty(final CharSequence... css) {

          isBank系列

          StringUtils.isBlank()

          是否為真空值(空格或者空值)

          StringUtils.isBlank(null) = true
          StringUtils.isBlank("") = true
          StringUtils.isBlank(" ") = true
          StringUtils.isBlank("bob") = false
          StringUtils.isBlank(" bob ") = false
          /**
           * <p>Checks if a CharSequence is whitespace, empty ("") or null.</p>
           * @param cs  the CharSequence to check, may be null
           * @return {@code trueif the CharSequence is null, empty or whitespace
           * @since 2.0
           * @since 3.0 Changed signature from isBlank(String) to isBlank(CharSequence)
           */
          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)) == false) {
                      return false;
                  }
              }
              return true;
          }

          StringUtils.isNotBlank()

          是否真的不為空,不是空格或者空值 ,相當于!isBlank();

          public static boolean isNotBlank(final CharSequence cs) {
                  return !isBlank(cs);
              }

          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
           /**
           * <p>Checks if any one of the CharSequences are blank ("") or null and not whitespace only..</p>
           * @param css  the CharSequences to check, may be null or empty
           * @return {@code trueif any of the CharSequences are blank or null or whitespace only
           * @since 3.2
           */
          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()

          是否全部都不包含空值或空格

          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
          /**
           * <p>Checks if none of the CharSequences are blank ("") or null and whitespace only..</p>
           * @param css  the CharSequences to check, may be null or empty
           * @return {@code trueif none of the CharSequences are blank or null or whitespace only
           * @since 3.2
           */
          public static boolean isNoneBlank(final CharSequence... css) {
            return !isAnyBlank(css);
          }

          StringUtils的其他方法

          可以參考官方的文檔,里面有詳細的描述,有些方法還是很好用的。

          https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html

          方法名英文解釋中文解釋
          IsEmpty/IsBlankchecks if a String contains text檢查字符串是否包含文本
          Trim/Stripremoves leading and trailing whitespace刪除前導和尾隨空格
          Equals/Comparecompares two strings null-safe比較兩個字符串是否為null安全的
          startsWithcheck if a String starts with a prefix null-safe檢查字符串是否以前綴null安全開頭
          endsWithcheck if a String ends with a suffix null-safe檢查字符串是否以后綴null安全結(jié)尾
          IndexOf/LastIndexOf/Containsnull-safe index-of checks包含空安全索引檢查
          IndexOfAny/LastIndexOfAny/IndexOfAnyBut/LastIndexOfAnyButindex-of any of a set of Strings任意一組字符串的索引
          ContainsOnly/ContainsNone/ContainsAnydoes String contains only/none/any of these characters字符串是否僅包含/無/這些字符中的任何一個
          Substring/Left/Right/Midnull-safe substring extractions字符串安全提取
          SubstringBefore/SubstringAfter/SubstringBetweensubstring extraction relative to other strings -相對其他字符串的字符串提取
          Split/Joinsplits a String into an array of substrings and vice versa將字符串拆分為子字符串數(shù)組,反之亦然
          Remove/Deleteremoves part of a String -刪除字符串的一部分
          Replace/OverlaySearches a String and replaces one String with another搜索字符串,然后用另一個字符串替換
          Chomp/Chopremoves the last part of a String刪除字符串的最后一部分
          AppendIfMissingappends a suffix to the end of the String if not present如果不存在后綴,則在字符串的末尾附加一個后綴
          PrependIfMissingprepends a prefix to the start of the String if not present如果不存在前綴,則在字符串的開頭添加前綴
          LeftPad/RightPad/Center/Repeatpads a String填充字符串
          UpperCase/LowerCase/SwapCase/Capitalize/Uncapitalizechanges the case of a String更改字符串的大小寫
          CountMatchescounts the number of occurrences of one String in another計算一個字符串在另一個字符串中出現(xiàn)的次數(shù)
          IsAlpha/IsNumeric/IsWhitespace/IsAsciiPrintablechecks the characters in a String檢查字符串中的字符
          DefaultStringprotects against a null input String防止輸入字符串為空
          Rotaterotate (circular shift) a String旋轉(zhuǎn)(循環(huán)移位)字符串
          Reverse/ReverseDelimitedreverses a String -反轉(zhuǎn)字符串
          Abbreviateabbreviates a string using ellipsis or another given String使用省略號或另一個給定的String縮寫一個字符串
          Differencecompares Strings and reports on their differences比較字符串并報告其差異
          LevenshteinDistancethe number of changes needed to change one String into another將一個String轉(zhuǎn)換為另一個String所需的更改次數(shù)

          1. IntelliJ IDEA快捷鍵大全 + 動圖演示,建議收藏!

          2. 換掉UUID,NanoID更快更安全!

          3. 一文玩轉(zhuǎn) Java 日志數(shù)據(jù)脫敏

          4. JVM 內(nèi)存布局詳解,圖文并茂,寫得太好了!

          最近面試BAT,整理一份面試資料Java面試BATJ通關(guān)手冊,覆蓋了Java核心技術(shù)、JVM、Java并發(fā)、SSM、微服務(wù)、數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu)等等。

          獲取方式:點“在看”,關(guān)注公眾號并回復(fù) Java 領(lǐng)取,更多內(nèi)容陸續(xù)奉上。

          PS:因公眾號平臺更改了推送規(guī)則,如果不想錯過內(nèi)容,記得讀完點一下在看,加個星標,這樣每次新文章推送才會第一時間出現(xiàn)在你的訂閱列表里。

          “在看”支持小哈呀,謝謝啦??

          瀏覽 43
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  日皮太爽了我要看免费视频 | 成人免费在线网站 | 亚洲AV无码久久久久久 | 日本午夜福利视频 | 无码三级在线观看 |