小编典典

检查字符串是否不为空且不为空

all

如何检查字符串是否不为空且不为空?

public void doStuff(String str)
{
    if (str != null && str != "**here I want to check the 'str' is empty or not**")
    {
        /* handle empty string */
    }
    /* ... */
}

阅读 153

收藏
2022-03-10

共1个答案

小编典典

那么isEmpty()呢?

if(str != null && !str.isEmpty())

请务必&&按此顺序使用 的部分,因为如果第一部分失败,java
将不会继续评估第二部分&&,从而确保您不会从str.isEmpty()ifstr为 null 得到空指针异常。

请注意,它仅在 Java SE 1.6 之后可用。您必须检查str.length() == 0以前的版本。


也忽略空格:

if(str != null && !str.trim().isEmpty())

(因为 Java 11str.trim().isEmpty()可以简化为str.isBlank()也将测试其他 Unicode 空白)

包装在一个方便的功能中:

public static boolean empty( final String s ) {
  // Null-safe, short-circuit evaluation.
  return s == null || s.trim().isEmpty();
}

变成:

if( !empty( str ) )
2022-03-10