检查 Java 中的字符串是否为空或为空

2022-08-31 04:32:46

我正在解析HTML数据。当要解析的单词不匹配时,可以是或空的。Stringnull

所以,我是这样写的:

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("")

如何最好地检查空的?String


答案 1

检查 null 或空或仅包含空格的字符串的正确方法是这样的:

if(str != null && !str.trim().isEmpty()) { /* do your stuffs here */ }

答案 2

你可以利用Apache Commons StringUtils.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

推荐