永发信息网

java等号和equals之间的区别

答案:2  悬赏:0  手机版
解决时间 2021-03-30 23:40
  • 提问者网友:富士山上尢
  • 2021-03-30 12:00
java等号和equals之间的区别
最佳答案
  • 五星知识达人网友:深街酒徒
  • 2021-03-30 13:33
地址,就是一个盘子;内容,就是盘子里放的食物。
等号比较的是地址是否相同,即两个变量是不是都是指向那一个盘子,至于内容的话,如果盘子是同一个,那内容肯定一样。
“equals是比较内容”这句话更准确的表述是,现在两个变量都指向了一种食物,比如牛排,如果牛排是同一种的,那就相等,如果不是,那就不等。但有可能两块同种的牛排分别放在两个不同的盘子里,即两个不一样的地址,这个时候如果你用等号来比较,那就会返回false不相等。

记得采纳呦~~~
全部回答
  • 1楼网友:何以畏孤独
  • 2021-03-30 14:48

总的来说Java的数据类型分为两类:
基本数据类型
如:byte,short,char,int,long,float,double,boolean 等。他们之间的比较,应使用双等号(==),比较的是他们的值。 
复合数据类型(类) 
当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址。
而equals在默认的情况下也是比较他们在内存中的存放地址。但是一些类库当中这个方法被覆盖掉了,如String,Integer,Date在这些类当中equals有其自身的实现,而不再是比较类在堆内存中的存放地址了。而是和先关类的定义有关了。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯