本文主要是介绍java NPE 犯错收集,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1. Boolean 为null
- 如下
if(null){}
则java.lang.NullPointerException
if(info != null && info.getFlag()){// do sth.
}
正确写法: 凡可能null的地方都加判断
if(info != null && info.getFlag() != null && info.getFlag()){// do sth.
}
或者如下: 重写关于Boolean
属性的get方法
public class Main{static class Info{public Info() {}public Info(Boolean flag) {this.flag = flag;}private Boolean flag;public Boolean getFlag() {// 这里自己编写,不要使用自动生成的if(flag == null){// log.warn("xxx");return false;}return flag;}public void setFlag(Boolean flag) {this.flag = flag;}}public static void main(String[] args) throws Exception {
// Info info = new Info();Info info = null;if(info == null ? false : info.getFlag()){// do sth.System.out.println("do sth.");}else {// do other sthSystem.out.println("do other sth.");}}}
这篇关于java NPE 犯错收集的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!