问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

在java中== 和 equals的区别27

发布网友 发布时间:2023-10-17 20:31

我来回答

6个回答

热心网友 时间:2023-11-19 00:14

解释一下==号,他比较的是一个对象在内存中的地址值,
比如2个字符串对象
String s1 = new String("str");
String s2 = new String("str");
如果用==号比较,会返回false,因为创建了两个对象,他们在内存中地址的位置是不一样的。

equals的情况比较复杂,它是java.lang.Object类中的一个方法。因为java中所有的类都默认继承于Object,所以所有的类都有这个方法。

在Object类源码中是这样写的。
public boolean equals(Object obj) {
return (this == obj);
}
他同样使用==号进行内存地址的比较。但是许多java类中都重写了这个方法,比如String。
public boolean equals(Object anObject) {
if (this == anObject) {
return true;
}
if (anObject instanceof String) {
String anotherString = (String)anObject;
int n = count;
if (n == anotherString.count) {
char v1[] = value;
char v2[] = anotherString.value;
int i = offset;
int j = anotherString.offset;
while (n-- != 0) {
if (v1[i++] != v2[j++])
return false;
}
return true;
}
}
return false;
}

String里的方法,如果==号比较不相等,还会进行一下值的比较。
所以equals方法具体的作用要看当前的那个类是如何实现重写父类中该方法的。如果没有重写该方法,那么他和==号等价。

热心网友 时间:2023-11-19 00:14

数据类型分简单(基本)数据类型和复合数据类型两种,基本数据类型就用==,其他的用equals,这个equals现在你一般还不会用,不要被迷惑了

热心网友 时间:2023-11-19 00:15

别听他们的!
没区别!
==是判断内存地址的,equals要看具体情况
java中Object类是所有类的父类!object有方法equals!
如果你配置了javadoc,你可以查看Object的源码,equals方法就是判断的==

所以说没区别。而有的类重写了eqials方法。如string,list等等。你也可以查看源码,他们是比较内容的。

对于任意一个类,如果没有重写equals方法,那么equals和==没区别!!

热心网友 时间:2023-11-19 00:16

== 比较的是内存地址
equals 比较的是值 这么想是最简单的了

例如 String a = "kbs";
String b = "kbs";
这时a.equals(b) 应该是true的
因为他们的值 都是kbs
== 就是说 生成对象的时候 会在内存里分配一小部分空间
这部分空间是有一个标识的 == 比较的就是这个标识。

热心网友 时间:2023-11-19 00:16

==比较数值;equal是用于字符串的比较。

热心网友 时间:2023-11-19 00:17

==用来比较基本数据类型的时候比的是值是否相等
==用来比较对象的时候比的是对象的地址是否相同
equals比较对象的内容是否相等
请问java中 ==和equals 的区别 ?

1、功能不同 "=="是判断两个变量或实例是不是指向同一个内存空间。"equals"是判断两个变量或实例所指向的内存空间的值是不是相同。2、定义不同 "equals"在JAVA中是一个方法。"=="在JAVA中只是一个运算符合。例子:Student student1 = new Student();Student student2 = new Student();System.o...

Java中==和equal有什么区别

Java中==和equal的区别为:1、== 表示 判断2个变量或对象实例是否指向同一个内存空间,equals()表示 判断2个变量或对象实例所指向的内存空间的值是否相同。2、== 表示 对内存地址进行比较,equals()表示 对字符串的内容进行比较。3、== 表示引用是否相同,equals() 表示值是否相同。

Java中关于==和equal的区别 以及equals方法重写

== 和 Equals 的区别 1. == 是一个运算符。2.Equals则是string对象的方法,可以.(点)出来。我们比较无非就是这两种 1、基本数据类型比较 2、引用对象比较 1、基本数据类型比较 ==和Equals都比较两个值是否相等。相等为true 否则为false;2、引用对象比较 ==和Equals都是比较栈内存中的地址...

简述“==”和“equals”的区别

1、java中equals和==的区别 值类型是存储在内存中的堆栈(简称栈),而引用类型的变量在栈中仅仅是存储引用类型变量的地址,而其本身则存储在堆中。2、==操作比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同。3、equals操作表示的两个...

java中equals和==的区别

总结起来,equals()和==在Java中的区别主要在于:equals()比较的是对象的内容(状态或属性),而==比较的是对象的引用(内存地址)。这也是为什么在重写equals()方法时,通常也需要重写hashCode()方法,以维护其一致性。因为在很多Java类库中,如HashMap、HashSet等,都是通过hashCode()和equals()方法来...

Java中==和equal有什么区别

在Java中,理解"=="和"equals()"的关键在于它们在比较上的差异。首先,"=="用于检查两个变量或对象实例是否指向相同的内存空间,这涉及到的是对象的引用。例如,如果str1和str2是两个字符串对象,str1=="str2"将判断它们是否是同一个对象实例,而不是内容是否相同。另一方面,"equals()"方法则...

equals和==的区别是什么?

equals和==的区别是功能不同,定义不同,运行速度不同。1、功能不同 "=="是判断两个变量或实例是不是指向同一个内存空间。"equals"是判断两个变量或实例所指向的内存空间的值是不是相同。2、定义不同 "equals"在JAVA中是一个方法。"=="在JAVA中只是一个运算符合。3、运行速度不同 "=="比"...

Java中关于==和equal的区别 以及equals方法重写

equals是判断两个变量或实例所指向的内存空间的值是不是相同 2.==是指对内存地址进行比较 equals()是对字符串的内容进行比较 3.==指引用是否相同 equals()指的是值是否相同 重写equals:public boolean equals(Object anObject) { if (this == anObject) { return true;} if (anObject instance...

java ==和equals的区别

属性不同:==是运算符号,而equals则属于方法。当==两边的对象属于基本类型时,==的作用仅是比较对象的值是否相等,如果相等返回true,否则返回false;当两边的对象属于引用数据类型时,==的作用是判断对象的内存地址是否一致,如果同时指向同一地址,则返回true,否则返回false.equals两边对象只能属于引用数据...

java里 equals和== 区别

==是一个比较运算符,基本数据类型比较的是值,引用数据类型比较的是地址值。(比较地址值即是指是否为同一个对象的引用)equals()是一个方法,只能比较引用数据类型。重写前比较的是地址值,重写后比一般是比较对象的属性。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
?!,腾讯微博黑名单里的人怎么不见了? 雨刮器喷不出水 有人扬言要杀我,我怎样通过法律保护自己 ...他说明天要杀我我不确定他会不会动手,我该怎么办? 做平面设计需要什么配置的笔记本好? 学平面设计的买笔记本用I3处理器还是I5处理器好 雨刷不喷水是什么原因? 斯柯达晶锐2011款雨刮器保险丝在哪里符号图片是什么_百度问一问 北京中农绿亨种子科技有限公司的介绍 晶锐1.6AT,突然雨刮器不能工作了,是什么情况? 警察能通过查到犯罪嫌疑人吗???15 如“身体健康”“吉祥如意”类的四字词语58 刚买的不锈钢锅煮的东西发黑,锅还可以用吗?23 你好,在吗?烧鸡变黑有治了吗? 朋友太自私怎么办?6 购买的学生票,由于事情耽误了,没有退票也没有取票,优惠次数会...4 维妙洗衣液属于什么档次 一个女性朋友总给我发0.42红包,是什么意思26 1200平方的地面找平5公分厚,需要多少水泥和石粉,怎么一个计算方法_百度... 找一首韩国歌曲,好像是个女子组合唱的,快节奏的,歌词中总出现Music,结尾... 寓意吉祥的成语,大概100个左右559 这本书的作者是5 天龙八部3鬼谷怎么加潜能点111 急求一部国外的电影,名字忘记了,隐约记得一些情景,好像是有一群人在... 求一部美国电影,知道的说下 ...是讲一群黑人学生和白人学生斗舞的故事..知道的请告诉我电影名... DNF所谓高强武器也就是+12及以上.请问+10个别+12有很大区别吗?对于百 ... 辞职后五险一金怎么办712 手机所有软件都没有声音366 妙洁丝生物酵素洗衣液和威露哪个好 还在合约期内的联通合约卡如何改套餐? 谁知道英语四级口语考试报名了没去会怎么样?会被禁考或者成绩有...29 怎么注册831 我的联通合约版7295还在合约期内不用的话,会不会有什么影响... 国家对退伍老兵的政策1 中国银行网上怎么查询余额 本公司养猪场出租给某养殖企业,对方要求开具发票,请问税率是多少?能... 朋友如果很自私 怎么办4 亲吻脸颊的微笑歌词 如何对待特别特别自私的朋友?233 就这样kisskiss什么歌 如何调整以前年度的管理费用?3 考教师资格证需要档案吗?我是非师范专业的,从社会上考好考吗 经济适用房可以把个人部分转卖吗 上海的早晨内容简介的介绍2 辞职后五险怎么办53 周而复是谁?80 《明星大侦探》第五季即将来袭,原班人马回归,你最期待谁?2 既然百度贴吧,知乎那么喜欢封禁用户的账号,那为什么不把所有账... 一个新手机号怎么注册269