Java == 和 equals()
admin
2024-02-11 13:58:29
0

想要熟练掌握equals与==的用法与区别,前提必须掌握基本数据类型和引用类型的概念,讲二者区别之前,先大概讲解一下基本数据类型和引用类型的概念。

八大基本数据类型

Byte,short,int,long,double,folat,boolean,char
.
其中byte占一个字节,short和char占2个字节,int,float占4个字节,double和long占8个字节,boolean只有true和false,这八种数据变量中直接存储值
注意:八大基本数据类型对应着各自的封装类型的包装类,提供了更多的方法,且不进行初始化时值默认为空(基本数据类型必须初始化),并且属于引用类型

引用类型:

引用类型主要是一些类、接口、数组
引用类型变量中存储的是地址,对应的地址存储数据


 

"=="和equals()方法的区别和联系

"=="比较基本数据类型时比较的是表面值内容,而比较两个对象时比较的是两个对象的内存地址值。

对于equals方法,注意:equals方法不能作用于基本数据类型的变量。

如果没有对equals方法进行重写效果和''==''一致,则比较的是引用类型的变量所指向的对象的地址;

诸如String、Date等类对equals方法进行了重写的话,比较的是所指向的对象的内容。


 涉及内存中的常量池问题例子

String s1 = "abc";
String s2 = "abc";
System.out.println(s1.equals(s2));
System.out.println(s1 == s2);答案是:true true

为什么第二个会是true呢?这就涉及到了内存中的常量池,常量池属于方法区的一部分,当运行到s1创建对象时,如果常量池中没有,就在常量池中创建一个对象"abc",第二次创建的时候,就直接使用,所以两次创建的对象其实是同一个对象,它们的地址值相等。

String str1 = new String(“abcd”);
String str2 = new String(“abcd”); 
System.out.println(str1.equals(str2));
System.out.println(str1 == str2);答案是:true false

这里创建了两次对象,一次是在常量池中创建了对象"abc",一次是在堆内存中创建了对象str1,所以str1和str2的地址值不相等。

相关内容

热门资讯

第三届来凤国际藤茶大会丨年销售... 极目新闻记者 李博 通讯员 田智松 陈燕利 清晨六点,湖北恩施来凤百福司镇沙道湾村的小稀藤茶叶生产车...
超解腻的金汤酸菜鱼做法,鱼片滑... 一、核心原料选择 主料:黑鱼1条(约1.5kg)或巴沙鱼片400g(家庭简化版) 汤底关键:海南黄灯...
原创 早... 最近,好莱坞明星斯嘉丽·约翰逊因电影《侏罗纪世界:新纪元》的宣传而再次造访韩国,这是她在2017年后...
慕斯蛋糕凝固秘籍:用酸奶替代吉... 慕斯蛋糕的丝滑质地源于凝固剂的精准运用,传统配方依赖吉利丁片实现冷藏定型,但亚洲厨师在食材创新中找到...
西安甲状腺医院讲解:这种主食天... 得了甲状腺疾病,是否要忌口?饮食上到底该注意些什么?其实,饮食吃得对不对,直接影响着康复进度。很多时...
2025小吃培训基地十大排行尘... 小吃排行依此是:1.食为先小吃培训2.卤侠派现卤现捞3.学委炸串培训中心4.二月鲜奶茶技术总部5.现...
天热没胃口,试试这个素馅饺子,... 夏天是一个吃不好,吃不下的季节,面对着大鱼大肉,许多人连动筷子的兴趣都没有,这显然对身体健康是不好的...
禾本科作物能成为人类主食的缘由 我们每天的生活都与禾谷类食物密不可分,面包、馒头、米饭、油条、水饺、稀饭等是我们一日三餐的美食,蛋糕...
丽江古城:烟火钩沉夜未央 当夕阳收走最后一抹余晖,丽江古城的另一条脉搏跳动起来。 四方街,纳西族群众与游客手拉手欢快打跳,背景...
柬埔寨七星海文化旅游及投资机遇... 近年来,柬埔寨以其丰富的自然资源和独特的文化底蕴,持续推动旅游产业发展,努力将旅游业打造为国家经济的...
阿联酋航空正式开通迪拜往返杭州... 杭州正式成为阿联酋航空中国第五大战略门户,每日迪拜往返航班搭载波音777-300ER三舱机型,提供头...
全运来广东,粤游粤轻松!全国媒... 7月30日,在第十五届全运会即将迎来倒计时100天的节点,“全运来广东 粤游粤轻松——广东‘赛事+文...
“文明倡游 全城共振”文明旅游... 齐鲁晚报·齐鲁壹点 孙淑玉 实习生 安晴为倡导文明旅游新风尚,营造文明、安全、有序的文旅环境,擦亮“...
原创 松... 松花蛋,这看似朴素的食材,却藏着地域的风土人情。江南的松花蛋,皮薄如纸,蛋黄流油,带着清雅的茶香;而...