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

.equals的问题

发布网友 发布时间:2022-04-26 10:13

我来回答

2个回答

热心网友 时间:2022-06-27 05:48

==测试的是两个引用是否指向同一个对象.
a指向的对象在堆中,"abc"在字符串常量池中,所以用==返回false
要想测试两个字符串是否相等要用equals方法
jvm运行的时候,将内存分为两个部分,一部分是堆,一部分是栈,椎中存放的
的是创建的对象,栈中存放的是方法调用过程中的变量或引用.

你后边的例子就要关系到字符串常量池了
(java字符串对象内存实现的时候
,在堆中又开辟了一块很小的内存,称之为字符串常量池,专门用来存放特定的对象)

用s[1][3]="abc";这种方法创建字符串对象就会去字符串常量池中找看有没有和"abc"相同的字符串对象,有就让引用指向它,如果没有就会在字符串常量池中创建一个字符串对象,然后引用指向创建的对象.
s[1][3]指向的是字符串常量池中的对象.而()中的"abc"返回的是字符串常量池中和s[1][3]指向的同一个对象的引用
所以你后边的例子指向的是同一个对象,所以返回true;

如果用new创建字符串对象,和上边的方式是不一样的.
new创建对象会先在堆中(不是字符串常量池)中创建一个字符串对象,并将引用指向该对象,然后去字符串常量池中看是是否有和该对象相同的对象,若有就将new创建的对象和字符串常量池中的对象联系起来,若没有就在字符串常量池中创建一个对象,并将该对象和new创建的对象联联系起来.

String a="abc";
String b="abc";
String c=new("abc");
a==b 为true;
a==c 为false;

热心网友 时间:2022-06-27 05:49

通常情况下==和equals都是比较两个对象是否存储在同一位置(是否有相同的地址),但是String类重写了Object类的equals方法。String的equals方法是比较2个String的hashcode是否相同,String的hashcode是基于内容的,所以就是如果2个String的内容一样,equals就是true。
除非是str1=str2;这种赋值,否则==就是false
只有new运算符才会在堆上开辟内存。这个题sca是在堆上的,a是在栈上的
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
娇兰小灯泡粉底液价格 颜值超高的粉底液 娇兰光透养肤粉底液SPF20 - 详细介绍 娇兰光透养肤粉底液SPF20 01C 30ml,打造无瑕肌的秘密武器 娇兰光透养肤粉底液SPF20 01C 30ml-适用对象 淘宝618超级喵运会有哪些玩法?附具体介绍 天猫超级喵运会技巧有哪些?攻略和玩法分享 小学六年级人教版《灯光》的详细主要要内容 618天猫瓜分多少红包?红包使用规则是什么? X战警基本信息 小鼠乒乒相关资料 请问幕墙设计公司哪家好 C语言求指导 成都幕墙设计公司推荐 谁给我解释下,什么是在栈上分配内存,与在堆上分配内存 建筑幕墙设计做得最好的公司? Android中,FragmentTransaction类的replace()方法的作用是什么? 幕墙公司排名,幕墙设计公司哪家好? 数据结构 关于栈top指针位置问题 深圳玻璃幕墙承包公司哪家比较好? unix变成中exec的问题 石家庄幕墙设计哪家最专业?地址是什么? 如果用一个栈代替9.2节中的拓扑排序的算法,是否得到不同的排序?为什么... 用C语言怎么写输出栈中元素,并打印栈中元素 栈是遵循先进后出原则,那指针是用来干嘛的? 菜鸟:刚学java,堆区,栈区,静态区,代码区,晕了!!! windows 7中内存保护机制不包括哪项技术? 怎么输出栈的内容,并且栈里的内容不变,就是栈里仍和输出之前一样 C语言删除栈中重复元素,用数组实现,不用指针 数据结构的课程设计!!如何把这里的栈结构用链队列替换? 怎样将迷宫求解的栈替换成队列? 广州幕墙设计公司哪家最好? 海南哪有技术很强的建筑幕墙设计顾问公司及幕墙工程公司? 深圳比较好的幕墙公司有哪些? 深圳哪些幕墙设计公司比较好 找玻璃幕墙公司做设计 上海哪家幕墙设计公司最好? 我的魅族MX手机刚刚清除数据,便签忘记备份了怎么办?怎么恢复? 蕾丝蒂亚(贯穿真实之剑)喜欢男主吗 动漫里使用双刀双剑的男角色有哪几位? 支持老旧小区改造 北京住房公积金解锁新功能 蕾斯蒂亚·阿修道尔的角色经历 艾斯特与贯穿真实之剑见面是什么时候? 精灵使的剑舞,神子什么时候用双剑 莲·阿修贝尔的角色背景 谁有精灵使的剑舞小说10卷以后的内容,格式随便,最好txt。急求,谢谢! 命运之夜之王者的txt全集下载地址 精灵使的剑舞的男主角是谁 精灵使的剑舞 蕾斯蒂亚的个人说明文 请问动漫(精灵使的剑舞)那个紫色魔的精灵最后有和神人在一起吗?还是怎样? 悬在头上的达摩克利斯之剑意思是什么?