黑马程序员技术交流社区

标题: ==和equals [打印本页]

作者: Java-se    时间: 2016-4-28 00:15
标题: ==和equals
equals和==号哪个可以用来比较字符串吗?为什么
作者: 单曲循环1992    时间: 2016-4-28 00:49
==是比较运算符,可以比较基本数据类型和引用数据类型,基本数据类型比较的是值,引用数据类型比较的是地址值
equals是String中的一个方法,一般都是被重写过的,比较的是两个对象的内容,一般情况下.比较两个字符串是用equalse的.
这是我自己对这两个的理解,有不正确的,请指正,谢谢
作者: 冯领峰    时间: 2016-4-28 01:09
我认为:字符串是String类型,String类型是引用数据类型,==比较引用数据类型时比较的是地址值.Object的equals方法比较的也是地址值;
作者: 冯领峰    时间: 2016-4-28 01:11
我认为:字符串是String类型,String类型是引用数据类型,==比较引用数据类型时比较的是地址值.Object的equals方法比较的也是地址值;String类重写了equals的方法,比较的是值.具体的话,还得看你怎么用,怎么比较,比较的是什么?
作者: 小K哥    时间: 2016-4-28 11:50
可以啊,看你是比较地址值是否相同还是值是否相同。如果比较地址值是否相同就用==。如果比较值是否相同就用equals,因为字符串已经重写了该方法。
作者: 320215787    时间: 2016-4-28 21:38
最好用equals比较
作者: 我认识你    时间: 2016-4-28 21:59
顶一个!!!
作者: wenle00    时间: 2016-4-28 22:07
用equals 比较字符串.




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2