c#equals函数
时间: 2023-12-05 19:41:19 浏览: 133
在C#中,可以使用Equals()方法来比较两个对象是否相等。Equals()方法是Object类的一个虚方法,因此所有的类都可以使用它。但是,如果没有在类中重写Equals()方法,则默认情况下,Equals()方法将比较对象的引用而不是值。因此,如果要比较两个对象的值是否相等,则需要在类中重写Equals()方法。
以下是一个重写Equals()方法的示例:
```csharp
public class MyClass
{
public int MyProperty { get; set; }
public override bool Equals(object obj)
{
if (obj == null || GetType() != obj.GetType())
{
return false;
}
MyClass other = (MyClass)obj;
return MyProperty == other.MyProperty;
}
}
```
在这个示例中,我们重写了Equals()方法来比较MyClass对象的MyProperty属性的值是否相等。如果两个对象的MyProperty属性的值相等,则Equals()方法返回true,否则返回false。
阅读全文