Java 如何避免;NullPointerException“;当使用;isEmpty();对于空对象
我正在使用一个名为bean的对象,其属性名为val,类型为String 我正在寻找一种方法来检查我的字符串值是否为空,并避免出现Null PointerExceptionJava 如何避免;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 如果它们都可以为
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
}