所以我在文章中读过==
检查对象引用是否相同 .equals()
检查数据是否相同但是当我自己编写一些程序时我感到困惑。
我有一个班级人,我在构造函数中传递了 10,20 现在我创建了另一个对象 p1 和 p2
person p = new person(10,20);
person p1;
p1 = p;
person p2=new person(10,20);
Console.WriteLine(p==p1); //true
Console.WriteLine(p.Equals(p1)); //true
Console.WriteLine(object.ReferenceEquals(p,p1)); //true
Console.WriteLine(p == p2); //false
Console.WriteLine(p.Equals(p2)); //false confusion same data
Console.WriteLine(object.ReferenceEquals(p, p2));//false
现在我对 p.equals(p2) 感到困惑,两者都有相同的数据 10,20 所以为什么是假的