为了账号安全,请及时绑定邮箱和手机立即绑定

关于String和StringBuilder对象的比较

StringBuilder sb = new StringBuilder("abc");

String s = sb.toString();

System.out.println(s.equals(sb));

为啥输出的是false,内容不是一样么?

正在回答

4 回答

首先,你的知道equals()比较的是什么.    在同一个类里,比较字符串中包含的内容是否相同。

而你知道他们的字符串是相等的,但是他们不同类

3 回复 有任何疑惑可以回复我~
#1

king124 提问者

通俗易懂虽然明白了还是要感谢
2016-12-13 回复 有任何疑惑可以回复我~

内存分配不一样. sb是可变的, s 不可变.

0 回复 有任何疑惑可以回复我~

equals比较的是的类的类型是否相同,类的属性和方法是否相同

0 回复 有任何疑惑可以回复我~

toString()是输入字符串每个字符的组合,StringBuilder定义的是字符串,本质不同

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

关于String和StringBuilder对象的比较

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号