isEmpty和isBlank使用分析和區別

2022-08-21 21:24:12 字數 1007 閱讀 9157

在做專案匯入功能時,使用了isempty進行了字串的判斷,匯入功能支援為空的情況,發現空格未能校驗通過
public static boolean isempty(final charsequence cs) 

public static boolean isblank(final charsequence cs)

for (int i = 0; i < strlen; i++)

}return true;

}

isempty和isblank的區別:

isempty僅僅是判斷空和長度為0字串

isblank判斷的是空,長度為0,空白字元(包括空格,製表符\t,換行符\n,換頁符\f,回車\r)組成的字串。

舉例:

stringutils.isempty(null)      = true

stringutils.isempty("") = true

stringutils.isempty(" ") = false

stringutils.isempty("bob") = false

stringutils.isempty(" bob ") = false

stringutils.isblank(null) = true

stringutils.isblank("") = true

stringutils.isblank(" ") = true

stringutils.isblank("bob") = false

stringutils.isblank(" bob ") = false

在使用為空判斷時,盡量使用isblank,這樣可以校驗範圍更廣

引入org.apache.commons.lang3的 jar 包中可以支援isempty和isblank的使用

你真的知道isEmpty 和 isBlank ?

org.apache.commons.lang.stringutils類提供了 string 的常用操作,最為常用的判空有如下兩種isempty string str 和isblank string str 原始碼如下 public static boolean isempty string str...

String的isEmpty和null區別

isempty 是jdk封裝的方法,是基於字串物件的,如果沒有分配記憶體,即string s 或string s null 此時字串未分配記憶體,呼叫它的類方法自然報空指標異常 null是判斷字串有沒有被分配記憶體空間,即該字串是否指向乙個記憶體位址,而 已經是乙個有值的字串了,只是它的值比較特殊,...

和 區別和聯絡, 和 區別和聯絡

和 區別和聯絡,和 區別和聯絡,實際專案中,什麼情況用哪種?首先,和 的聯絡 共同點 和 都可以用作 邏輯與 運算子,都是雙目運算子。具體要看使用時的具體條件來決定。無論使用哪種運算子,對最終的運算結果都沒有影響。情況1 當上述的運算元是boolean型別變數時,和 都可以用作邏輯與運算子。情況2 ...