首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Java String 一个简单例子的深思 (对象比较 值相等 相关有关问题)

2012-10-11 
Java String 一个简单例子的深思 (对象比较 值相等 相关问题)只要是学习过Java的人,都一定对String类再熟

Java String 一个简单例子的深思 (对象比较 值相等 相关问题)
只要是学习过Java的人,都一定对String类再熟悉不过了。可是你真的理解了String吗?
下面让我们来做个试验,看你能否全部答对如下的问题(面试时也许你会遇到下面的问题哟,大家要好好回答啊。):


s1.equals(s2)s1 == s3s1.equals(s3)s1.equals(s4)s2.equals(s4)s1 == "abc"



哈哈,答案公布了,你全都答对了吗?如果你全都答对了,恭喜你,你对String类的理解已经不再是新手了(String的深一步理解,我以后会再写文章来讨论。)。

其实,如果你能将上面的结果全都答对,不仅说明你对String类有了比较深的理解,更说明你对Java对象是如何在内存中存储的,已经有了比较深的理解。

如果有的运行结果和你期待的结果不一致,说明你对对象及对象的值,理解可能出现了歧义。
(Debug一下上面的程序,看看“Variables”窗口那四个变量的ID,你就会明白错在哪儿了)


    通过上面一个很简单的例子,说明我们看似很熟悉的东西,其实我们未必很熟悉。因为一个小小的理解错误,可能会导致一个项目中很大的bug,往往这样的bug又很难发现(因为我们经常把这样的bug忽略了)。

    希望大家如果还有类似的经验和理解,请不要吝惜您的经验,和大家一起分享,让我们共同进步。

热点排行