1. 程式人生 > >StringUtils裡的isEmpty方法和isBlank方法的區別

StringUtils裡的isEmpty方法和isBlank方法的區別

isEmpty
public static boolean isEmpty(String str) {        return str == null || str.length() == 0;}
isBlank
public static boolean isBlank(String str) {
        int strLen;
        if (str != null && (strLen = str.length()) != 0) {
            for(int i = 0; i < strLen; ++i) {
                if (!Character.isWhitespace(str.charAt(i))) {    //判斷字元是否為空格、製表符、tab
                    return false;
                }
            }

            return true;
        } else {
            return true;
        }
    }
通過以上程式碼我們可以看出:    1.isEmpty沒有忽略空格引數,是以是否為空和是否存在為判斷依據。
    2.isBlank是在isEmpty的基礎上進行了為空的判斷。(一般更為常用)
大家可以下面的例子取體會一下。
StringUtils.isEmpty("yyy") = false
StringUtils.isEmpty("") = true
StringUtils.isEmpty("   ") = false

StringUtils.isBlank("yyy") = false
StringUtils.isBlank("") = true
StringUtils.isBlank("   ") = true