浅谈java 中equals和==的区别
本文实例为大家分享了java中equals和==的区别的具体代码,供大家参考,具体内容如下
java9举例代码:
Stringstr1="abc";
Stringstr2="abc";
Stringstr3=newString("abc");
Stringstr4=newString("abc");
当:str1==str2 输出:true当:str1.equals(str2);输出:true
当:str1==str3输出:false 当:str1.equals(str3);输出:true
当:str3==str4输出:false 当:str3.equals(str4);输出:true
涉及到的细节:
-可以通过String中intern方法,字符串对象在常量池中和它相等的字符串的引用
str3.intern()==str4.intern()输出:true
str1.intern().equals(str2.intern())输出:true
str1.intern()==str1输出:false
-Stringstr=newString("abc");创建了几个对象?
首先要看常量池里是否有“abc”这个字符串,如果有(Stringstr="abc";出现时则有),则创建一个,如果没有,则创建两个(一个在常量池,一个在堆中)。
==和equals区别:
对于==:
作用于基本数据类型的变量,则直接比较其存储的“值”是否相等;
作用于引用类型的变量,则比较的是所指向的对象的地址;
对于equals:
equals方法不能作用于基本数据类型的变量;
如果没有对Object中equals方法进行重写,则比较的是引用类型的变量所指向的对象的地址,反之则比较的是内容;
以上所述是小编给大家介绍的java中equals和==的区别详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短