<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ū)別,居然一半的人答不上來(lái)?

          共 11546字,需瀏覽 24分鐘

           ·

          2022-07-04 16:04

          作者:Moshow鄭鍇,來(lái)源:blog.csdn.net/moshowgame/article/details/102914895

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

          isEmpty系列

          StringUtils.isEmpty()

          是否為空. 可以看到 " " 空格是會(huì)繞過(guò)這種空判斷,因?yàn)槭且粋€(gè)空格,并不是嚴(yán)格的空值,會(huì)導(dǎo)致 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 true} if 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;
              }
          /**
           *
           * <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 true} if 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()

          相當(dāng)于不為空 , = !isEmpty()

          public static boolean isNotEmpty(final CharSequence cs) {
              return !isEmpty(cs);
          }

          StringUtils.isAnyEmpty()

          是否有一個(gè)為空,只有一個(gè)為空,就為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 true} if 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()

          相當(dāng)于!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 true} if none of the CharSequences are empty or null
           * @since 3.2
           */

          public static boolean isNoneEmpty(final CharSequence... css) {
              return !isAnyEmpty(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 true} if 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()

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

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

          StringUtils.isAnyBlank()

          是否包含任何真空值(包含空格或空值)

          StringUtils.isAnyBlank(null) = true
          StringUtils.isAnyBlank(null, “foo”) = true
          StringUtils.isAnyBlank(nullnull) = 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 true} if 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(nullnull) = 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 true} if 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的其他方法

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

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

          我們創(chuàng)建了一個(gè)高質(zhì)量的技術(shù)交流群,與優(yōu)秀的人在一起,自己也會(huì)優(yōu)秀起來(lái),趕緊點(diǎn)擊加群,享受一起成長(zhǎng)的快樂(lè)。另外,如果你最近想跳槽的話,年前我花了2周時(shí)間收集了一波大廠面經(jīng),節(jié)后準(zhǔn)備跳槽的可以點(diǎn)擊這里領(lǐng)取

          推薦閱讀

          ··································

          你好,我是程序猿DD,10年開(kāi)發(fā)老司機(jī)、阿里云MVP、騰訊云TVP、出過(guò)書創(chuàng)過(guò)業(yè)、國(guó)企4年互聯(lián)網(wǎng)6年從普通開(kāi)發(fā)到架構(gòu)師、再到合伙人。一路過(guò)來(lái),給我最深的感受就是一定要不斷學(xué)習(xí)并關(guān)注前沿。只要你能堅(jiān)持下來(lái),多思考、少抱怨、勤動(dòng)手,就很容易實(shí)現(xiàn)彎道超車!所以,不要問(wèn)我現(xiàn)在干什么是否來(lái)得及。如果你看好一個(gè)事情,一定是堅(jiān)持了才能看到希望,而不是看到希望才去堅(jiān)持。相信我,只要堅(jiān)持下來(lái),你一定比現(xiàn)在更好!如果你還沒(méi)什么方向,可以先關(guān)注我,這里會(huì)經(jīng)常分享一些前沿資訊,幫你積累彎道超車的資本。

          點(diǎn)擊領(lǐng)取2022最新10000T學(xué)習(xí)資料
          瀏覽 32
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <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>
                  日本黄色一级代 | 国产夫妻自拍网 | 国产三级精品视频 | 成人激情五月天 | 老太色HD色老太HD-百度 无码专区一区二区三区 |