判斷字元串是否為“ ”和 null
/**
* 我們在判斷一個字元串是否為 null 或 ""時,可以使用 StringUtils 的方法:
* StringUtils.isEmpty(str2)
* 或
* StringUtils.isBlank(str2)
* 當字元串為 null 或 ""時,傳回true,否則傳回false; 示例如下:
*/
if (StringUtils.isEmpty(str2)) {
System.out.println(11);
}
if (StringUtils.isBlank(str2)) {
System.out.println(222);
}
但 StringUtils.isEmpty(str2) 和 StringUtils.isBlank(str2) 是有差別的
// 源碼如下:
public static boolean isEmpty(String str) {
return str == null || str.length() == 0;
}
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))) {
return false;
}
}
return true;
} else {
return true;
}
}
/**
* 分析:
* 當字元串 str1 = "" 時,StringUtils.isEmpty(str1) 和 StringUtils.isBlank(str1)
* 的結果是一樣的;
* 但當 str1 = " " 或str2 = " " + " "時 StringUtils.isEmpty(str1)就傳回false,而
* StringUtils.isBlank(str1) 則傳回 true 了。
*
* 結果:
* 當字元串都為空格、制表符、tab 的情況下 isEmpty 判斷字元串不為空
* isBlank判斷字元串任然為空
* 是以在使用時要根據情況自行選擇使用哪種
*/
/**
* StringUtils是 org.apache.commons.lang.StringUtils的包,
* 使用時需要導入依賴
* <!--String Utils-->
* <dependency>
* <groupId>commons-lang</groupId>
* <artifactId>commons-lang</artifactId>
* <version>2.6</version>
* </dependency>
*
*/