关于空值的疑问
来源:11-1 检查工具介绍

乃好
2020-04-28
老师您好,在工作中确实有很多地方会遇到空指针这样的问题,包括有一些避免的方法,举个小例子吧
if(对象a.equals("xxx")) { ... } if(("xxx").equals(对象a)) { ... }
这两种判断,据说是下面那种更好,因为对象a有可能是个空值,可我的疑问是,一个对象是空值的话,那它就是不正常的,既然是不正常的就让他直接抛出空指针异常好了,这样我们也好知道到底是哪里出了问题,但有些时候为什么要去判断某个对象是否为空来做进一步处理呢?
写回答
2回答
-
有个大原则,不管是空值异常还是运行时异常,都应该是我们能预料到并且是我们所希望。反过来任何不可控的异常都是有问题的。
112020-04-29 -
Java攀登者
2020-04-28
因为空值不一定是异常啊,比如根据id到数据库查某个对象,但数据库本身就不存在这个对象,那么空值就是正确的值,此时抛出异常就是不正确的处理
00
相似问题