equals方法
用于比较两个独立对象的内容是否相同,就好比去比较两个人的长相是否相同,它比较的两个对象是独立的
(1)
基本类型没有equals方法,equals只比较值(对象中的内容)是否相同(相同返回true)。 (2)
一个类如果没有定义equals方法,它将默认继承Object中的equals方法,返回值与==方法相同,, 值得注意的是 : String虽然是继承了Object ,但是String 重写了Object 里面的equals方法,string的 equals方法 不是比较对象的内存地址值而是比较对象里面的内容 ,所以 String 类的equals方法 是比较内容的
(3)
在你的代码中str1和str2对象的内存地址值是不同的,因为他们是2个对象,,这个2个对象在内存里有不同的存放位置,,,所以==比较时str1和str2是不等的,,
所以str1==str2 返回false ,,,但是str1和str2 2个对象里面的内容是一样的,,使用equals方法 是比较他们的内容是否相同,,,同理你的v1和v2使用 equals方法 也是与str1.equals(str2)一样,,,
|