黑马程序员技术交流社区
标题:
"=="和equals方法的区别
[打印本页]
作者:
洛漠O_o
时间:
2014-8-8 08:31
标题:
"=="和equals方法的区别
自己总结的,。带代码……
public static void main(String[] args) {
// 基本类型:short、long、int、double、float、char、byte、boolean
int i = 0, j = 0;
/* 1.基本类型只有"=="方法,没有equals方法 */
System.out.println(i == j);
// 基本类型对应的对象有equals方法
/* 2."=="比较的是内存地址;equals比较的是对应内存中存的值 */
System.out.println(new Integer(1) == new Integer(1));// 结果为false,因为比较的是内存中的地址
System.out.println(new Integer(1).equals(new Integer(1)));// 结果为true,因为比较的是内存中的值
System.out.println(new Test01().equals(11));
}
/* 3.重写equals方法 */
public boolean equals(Object obj) {
/*
* 这个里面可以有各种操作
*/
System.out.println("重写方法");
return false;
}
复制代码
作者:
席杰
时间:
2014-8-8 09:28
学习了,谢谢楼主的分享!
作者:
Justfeeling
时间:
2014-8-8 11:00
谢谢搂主分享
作者:
yuli2039
时间:
2014-8-8 12:32
谢谢楼主的分享!
作者:
奋斗2014
时间:
2014-8-8 12:47
==比较的是整个对象,equals 比较的是对象里的内容或者说元素。
作者:
如果有梦
时间:
2014-8-8 12:53
说的还不够具体
作者:
小洁呵呵
时间:
2014-8-8 12:56
。。。。。。。==比较的是不是同一个对象,equals可以覆盖我想比较啥我就比较啥。。。
作者:
微微微笑
时间:
2014-8-9 20:37
==与equals的区别
相同点:==与equals在最初始的定义是一样的,在Object中都是比较两个对象的地址是否相同
==比较基本类型数据,就是看是否相同
比较引用类型对象,看对象的引用地址是否相同
equals()在其他类中都被重写用来实现自己的“相等”逻辑
作者:
挥斥方遒
时间:
2014-8-9 21:04
我怎么看不到楼主发的东西
作者:
lijiang
时间:
2014-8-9 21:26
这个不是活动的第1题吗。。。。
作者:
刘小记.
时间:
2014-8-9 21:32
嗯. 是这样
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2