Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何避免;NullPointerException“;当使用;isEmpty();对于空对象_Java_Nullpointerexception - Fatal编程技术网

Java 如何避免;NullPointerException“;当使用;isEmpty();对于空对象

Java 如何避免;NullPointerException“;当使用;isEmpty();对于空对象,java,nullpointerexception,Java,Nullpointerexception,我正在使用一个名为bean的对象,其属性名为val,类型为String 我正在寻找一种方法来检查我的字符串值是否为空,并避免出现Null PointerException if (bean.getVal().isEmpty())) { // check if my value has some text. // do some stuff. } 我希望找到解决这个问题的正确方法。依我看。这里有两个潜在的NPE。 Bean可以为null,Bean.getVal()可以为null 如果它们都可以为

我正在使用一个名为bean的对象,其属性名为val,类型为String

我正在寻找一种方法来检查我的字符串值是否为空,并避免出现Null PointerException

if (bean.getVal().isEmpty())) { // check if my value has some text.
// do some stuff.
}

我希望找到解决这个问题的正确方法。

依我看。这里有两个潜在的NPE。 Bean可以为null,Bean.getVal()可以为null

如果它们都可以为空,我认为您可以:

if (bean != null && bean.getVal() != null && bean.getVal().isEmpty()) {
    // do some stuff
}
如果您保证bean不能为null,那么可以跳过第一个null检查,并使用ApacheCommonsStringUtils作为示例

if (StringUtils.isEmpty(bean.getVal()) { //do stuff }

您可以使用JDK8 Optional.ofNullable方法

if(Optional.ofNullable(bean).isPresent() &&!Optional.ofNullable(bean.getValue()).isPresent()){
// do your logic
}