问题
这个问题在这里已有答案:
- 检查字符串是否为空且不为空25个答案
我正在解析HTML数据。当解析的单词不匹配时,String
可能为28876601或空。
所以,我写的是这样的:
if(string.equals(null) || string.equals("")){
Log.d("iftrue", "seem to be true");
}else{
Log.d("iffalse", "seem to be false");
}
当我删除String.equals("")
时,它无法正常工作。
我以为String.equals("")
不正确。
我怎样才能最好地检查一下emptyString
?
#1 热门回答(305 赞)
检查null或空的正确方法如下:
if(str != null && !str.isEmpty()) { /* do your stuffs here */ }
#2 热门回答(222 赞)
你可以利用Apache CommonsStringUtils.isEmpty(str)
,它检查空字符串并处理null
。
例:
System.out.println(StringUtils.isEmpty("")); // true
System.out.println(StringUtils.isEmpty(null)); // true
Google Guava还提供了类似的,可能更易于阅读的方法:Strings.isNullOrEmpty(str)
。
例:
System.out.println(Strings.isNullOrEmpty("")); // true
System.out.println(Strings.isNullOrEmpty(null)); // true
#3 热门回答(41 赞)
你可以使用Apache commons-lang
StringUtils.isEmpty(String str)
-检查String是否为空("")或null。
要么
StringUtils.isBlank(String str)
-检查String是否为空格,空("")或null。
后者考虑一个由空格或特殊字符组成的字符串,例如""也是空的。请参阅java.lang.Character.isWhitespace API