百度问问java如何判断对象是否为空时,报空指针异常,如何解决?

我实例了一个对象
book book=new book();
查询:
book=bookService.findBook(xxxx);
if(!book.equals("")&&book!=null){
}
报空指针异常,如何解决,才不会报空指针异常?

比较好的写法
book=bookService.findBook(xxxx);

if(book != null && !book.equals("")){

}

Java逻辑判断都是从左边开始的,所以如果book为null那么后面的equals就不会执行,也就不会报nullPointerException了
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-02-20
if(!book.equals("")&&book!=null)这一段修改一下即可:
第一种:if(book!=null&&!book.equals(""))。就是说先判空,再比较
第二种:if(!"".equals(book))。这样也可以。就是说让equals前边的那个参数为一个确认非null的值
第2个回答  2012-02-20
if(!book.equals("")&&book!=null){
}
改成
if(book!=null){
}
第3个回答  2012-02-20
if(bookService!=null){
book=bookService.findBook(xxxx);
if(book!=null){
//dosomething
}
}
相似回答