引起
当我们比较两个参数值是否相等的时候,经常用到equals,但是 偶尔我们会忘记判断非空,例如写出这样的代码:
这样就会引起空指针,正确的写法是,
我们知道java中对equals的定义: 对于任何非空引用值 x
,x.equals(null)
都应返回 false
。
关于null的理解:
1.null是任何引用类型的默认值,不严格的说是所有object类型的默认值。这对所有变量都是适用的,如成员变量、局部变量、实例变量、静态变量
2.null是任何一个引用类型变量的默认值,在java中你不能使用null引用来调用任何的instance方法或者instance变量
参考:java中关于null的一些理解
相关阅读
java.lang.NullPointerException - 如何处理空指针异
当应用程序试图null在需要对象的情况下使用时抛出。这些包括: 调用null对象的实例方法。 访问或修改null对象的字段。 把长度null