【发布时间】:2010-12-11 05:07:30
【问题描述】:
我今天换了讲师,他用一个奇怪的代码对我说。 (他说最好使用.equals,当我问为什么时,他回答“因为它是!”)
下面是一个例子:
if (o1.equals(o2))
{
System.out.println("Both integer objects are the same");
}
而不是我习惯的:
if (o1 == o2)
{
System.out.println("Both integer objects are the same");
}
这两者有什么区别。为什么他的方式(使用.equals)更好?
Found this 快速搜索,但我无法真正理解这个答案:
【问题讨论】:
-
这已被多次询问。 stackoverflow.com/questions/971954/…
-
猜错地方了
-
由于 C# 和 Java 在这里的行为方式并不完全相同,我认为每种语言都有一个问题是合理的。
-
我引用的答案包括Java 和 C#,这是一件好事:)
-
没有讲师应该满足于给出这样的答案,你也不应该。