https://www.zhihu.com/question/26872848
总结一下:如果是对象间的对比,最好要用equals。==是基于引用内存的,即使对象的值相同,新建的实例不同,也会判断为不相同。equals默认比较内容,常用于复写该方法。
例:String a="computer"
Strinb b = "computer"
a==b?的值是false
但是a.equals(b)的值是true。
所以判断对象是否为空,两者都行。即a==null 或者 a.equals(null)。但是判断是否为某个值的时候,要用equals,当然,如果你要判断是否是同一个对象实例,那就用==就ok。
网友评论