黑马程序员技术交流社区

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

作者: zjingwen    时间: 2015-9-15 20:45
标题: ==和equals的区别
String a='a';
String b = 'a';
a==b与 a.equals(b)有啥区别{:2_32:}
作者: Morphine    时间: 2015-9-15 21:24
{:2_34:}  首先. 你这个 String a = 'a';是不对滴. 应该是双引号滴.
             然后,a==b比的是内存地址是否相同.
             a.equals(b)比的是内容是否相同.
最后,你定义变量a的值是a,内存中会存在这个a值.你再定义变量b的值为a的话,系统就自动把那个内存中的a值赋给b了,这样他们在内存中的地址就是相同的.
所以呢  你这样定义 不管a==b或者 a.equals(b)的结果都是true!
我也是菜鸟.说的不知道对不对...


作者: zjingwen    时间: 2015-9-21 12:31
Morphine 发表于 2015-9-15 21:24
首先. 你这个 String a = 'a';是不对滴. 应该是双引号滴.
             然后,a==b比的是内存地址 ...

是呀。你说的对




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