黑马程序员技术交流社区
标题:
字符串比较时什么时候该用”=“什么时候该用equals
[打印本页]
作者:
siyuefeiyang
时间:
2014-3-27 23:50
标题:
字符串比较时什么时候该用”=“什么时候该用equals
本帖最后由 siyuefeiyang 于 2014-3-28 12:07 编辑
在做练习的时候对于这个比较字符串的方法,很纳闷有点晕,哪位大神给解释一下
THS
作者:
mdb
时间:
2014-3-27 23:55
陈年老问题,我也想旧问题新看下...
作者:
zou5268237
时间:
2014-3-28 00:18
"==" : 操作比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同。
"equals" : 操作表示的两个变量是否是对同一个对象的引用,即堆中的内容是否相同。
作者:
cancle
时间:
2014-3-28 01:42
①==操作符专门用来比较两个变量的值是否相等,也就是比较两个变量所对应的内存中所存储的数值是否相同。
②equals方法是用于比较两个独立对象的内容是否相同,它比较的两个对象是独立的。例如:
string a=new string("abc");
string b=new string("abc");
两个语句分别new出了两个对象,然后用a,b分别指向了对应的对象,这是两个不同的对象,他们的首地址是不同,即a,b中存的内存是不同的,所以表达式a==b将返回false,而这两个对象中存的值是相同的,所以表达式a.equals(b)将返回true;
作者:
心灵苦旅
时间:
2014-3-28 09:35
学习学习{:2_36:}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2