问一个简单的问题
class MyClass
{
int x;
MyClass(int i)
{
x = i;
}
public static void main(String args[])
{
MyClass m1 = new MyClass(100);
MyClass m2 = new MyClass(100);
if(m1.equals(m2))
{
System.out.println("Both are equal");
}
else
{
System.out.println("Both are not equal");
}
}
}
为什么输出的是("Both are not equal")啊?
书上说==判断的是是否引用了同一个对象,equal("")才是比较字符串
但即使把if(m1.equals(m2))换成 if (m1 == m2)还是输出"Both are not equal"啊!