最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳談StringUtils3之StringUtils.isEmpty()和StringUtils.isB的區(qū)別

 更新時間:2022年07月01日 09:45:10   作者:Moshow鄭鍇  
這篇文章主要介紹了詳談StringUtils3之StringUtils.isEmpty()和StringUtils.isB的區(qū)別,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

也許你兩個都不知道,也許你除了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 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()

>>>相當于不為空 , = !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 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()

>>>相當于!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()

>>> 是否真的不為空,不是空格或者空值 ,相當于!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 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(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 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的其他方法

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

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安全結尾
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旋轉(循環(huán)移位)字符串
Reverse/ReverseDelimitedreverses a String -反轉字符串 
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轉換為另一個String所需的更改次數(shù)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • JVM內存區(qū)域劃分相關原理詳解

    JVM內存區(qū)域劃分相關原理詳解

    這篇文章主要介紹了JVM內存區(qū)域劃分相關原理詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-10-10
  • SpringBoot讀取excel表格的示例代碼

    SpringBoot讀取excel表格的示例代碼

    這篇文章主要介紹了SpringBoot讀取excel表格的示例代碼,代碼簡單易懂,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • 淺談Java中return和finally的問題

    淺談Java中return和finally的問題

    在Java中當try、finally語句中包含return語句時,執(zhí)行情況到底是怎樣的,finally中的代碼是否執(zhí)行,大家眾說紛紜,有的說會執(zhí)行,有的說不會執(zhí)行,到底哪種說法正確,下面我們來詳細討論下
    2015-10-10
  • 淺析JAVA_HOME,CLASSPATH和PATH的作用

    淺析JAVA_HOME,CLASSPATH和PATH的作用

    以下是對JAVA_HOME,CLASSPATH和PATH的作用進行了詳細的分析介紹,需要的朋友可以過來參考下
    2013-07-07
  • springboot如何查找配置文件路徑的順序和其優(yōu)先級別

    springboot如何查找配置文件路徑的順序和其優(yōu)先級別

    此文是在工作中遇到的關于springboot配置文件的問題,在網(wǎng)上查閱資料和自己測試之后記錄的,以便日后查閱。希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • java中線程安全的list詳細特性和用法

    java中線程安全的list詳細特性和用法

    這篇文章主要給大家介紹了關于java中線程安全的list詳細特性和用法的相關資料,Java中有多種線程安全的List,其中比較常用的有Vector、Collections.synchronizedList()和CopyOnWriteArrayList三種方式,需要的朋友可以參考下
    2024-03-03
  • 徹底搞懂Java多線程(一)

    徹底搞懂Java多線程(一)

    這篇文章主要給大家介紹了關于Java面試題之多線程和高并發(fā)的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用java具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2021-07-07
  • 使用ServletInputStream在攔截器或過濾器中應用后重寫

    使用ServletInputStream在攔截器或過濾器中應用后重寫

    這篇文章主要介紹了使用ServletInputStream在攔截器或過濾器中應用后重寫,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • Java OOP三大特征之封裝繼承與多態(tài)詳解

    Java OOP三大特征之封裝繼承與多態(tài)詳解

    本文主要講述的是面向對象的三大特性:封裝,繼承,多態(tài),內容含括從封裝到繼承再到多態(tài)的所有重點內容以及使用細節(jié)和注意事項,內容有點長,請大家耐心看完
    2022-07-07
  • Java full gc觸發(fā)情況實例解析

    Java full gc觸發(fā)情況實例解析

    這篇文章主要介紹了Java full gc觸發(fā)情況實例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04

最新評論

峨山| 宿州市| 贵州省| 白水县| 邳州市| 湖南省| 新乐市| 三亚市| 屯留县| 福安市| 南充市| 五寨县| 微博| 略阳县| 鹤峰县| 江津市| 香格里拉县| 新竹市| 嘉荫县| 沽源县| 浦县| 上林县| 昌乐县| 宣化县| 错那县| 新余市| 民勤县| 中宁县| 托克逊县| 奎屯市| 宁津县| 昌乐县| 南涧| 自治县| 阿图什市| 海丰县| 边坝县| 鄂伦春自治旗| 通州区| 清苑县| 辽宁省|