首页 > 其他 > 详细

==和equals的区别

时间:2017-09-30 14:46:58      阅读:234      评论:0      收藏:0      [点我收藏+]

1.如果是基本数据类型:也就是原始数据类型。byte,short,int,long,float,double,boolean。他们之间的比较是使用(==)比较,比较的是他们的值。基本数据类型是值类型,都是存在栈中的。

2.如果是引用数据类型:当他们使用==进行比较的是他们在内存中存放地址,所以除非是同一个new出来的对象,他们比较结果为true,否则是false,java中所有的类都是继承Object这个基类的,在Object中定义了一个equals方法,这个方法的初始行为是比较对象的内存地址,如果看源码,Object的equals是用==判断相等的,但是在一些类库存中的这个方法被覆盖掉了,如string,integer,Date这些类中体.有他们自己的实现,而不是比较类在队内存的地址了。

==和equals的区别

原文:http://www.cnblogs.com/youdiaodaxue16/p/7614715.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!