我尝试使用方法Object.Equals(Object)
来比较我创建的类的两个不同实例,但我需要的是比较值而不是实例的引用。
关于这个主题的研究我发现我需要使用值类型,比如struct,以便能够使用方法Equals
来比较实例的值而不是引用但是我有一个庞大的课程库,所以我害怕从一个班级到另一个班级改变他们的类型,因为我不知道它有什么其他后果......我应该做什么关于whay的建议?
我可以覆盖我的类的Equals方法,以便比较值而不是引用吗?我知道有很多方法可以做到,但是什么是能够提供最佳性能的" 编程校正" ......?
答案 0 :(得分:3)
是的,您必须覆盖类的Equals方法和==运算符,并编写比较逻辑。
更多阅读
Guidelines for Overloading Equals() and Operator == (C# Programming Guide)