为什么要写if(obj==null)return false; ?
右边用快捷键自动重写的equals方法里,为什么要写if(obj==null)return false; ?
15
收起
正在回答
2回答
同学你好,1. 如果右侧代码没有判断if(obj==null)在运行时,会出现nullpointerexception的异常,如图所示:
2. 左侧未判断if(obj==null),在运行时也会出现与右侧一样的错误。同学可以添加上if(obj==null)的逻辑。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
好帮手慕小尤
2019-12-02 16:41:50
同学你好,if(obj==null)是判断接收的Object类型的对象是否为null,同学可以理解为,if(obj==null)是判断Object类型的对象是否有实例化,如果将没有实例化的对象,if(obj==null)则为true,返回false。例如:
//判断1 : 这里会返回 true User user = null; if(user == null){ return true; }else{ return false; } //判断2 : 这里会返回 false User user = new User(); if(user == null){ return true; }else{ return false; } // 原因: User user = new User(); 这时候已经创建了一个对象,所以user不会为null
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
1. Java 零基础入门
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星