当我们比较两个参数值是否相等的时候,经常用到equals,但是 偶尔我们会忘记判断非空,例如写出这样的代码:
这样就会引起空指针,正确的写法是,
我们知道java中对equals的定义: 对于任何非空引用值 x,x.equals(null) 都应返回 false。
关于null的理解:
1.null是任何引用类型的默认值,不严格的说是所有object类型的默认值。这对所有变量都是适用的,如成员变量、局部变量、实例变量、静态变量
2.null是任何一个引用类型变量的默认值,在java中你不能使用null引用来调用任何的instance方法或者instance变量
网友评论