[quote] 原帖由 [i]鄢甲力[/i] 于 2011-07-31 11:55 发表 [url=http://bbs.itheima.com/redirect.jsp?goto=findpost&pid=6519&ptid=864][img]http://bbs.itheima.com/images/common/back.gif[/img][/url]肯定是false啦,因为String是引用类型,a和b 相当于在内存中分配了两个地址,两份空间,a和b得地址引用存放在内存的栈中 实际的数据存放在内存堆中,只不过a和b存放的实际数据一样而已,实际上市两个对象,两个空间,所以肯定是falsed了. [/quote]
我的理解是,栈内存中的a和b中所存放的是两个String对象在堆内存中的首地址,所以他们是不一样的,这才造成 a==b 返回false,而对内存中的两个“abc”对象的内容是一样的,所以a.equals.(b)值应该为true。 |