判断引用类型相等

判断自定义类型

(1)判断两个引用是否指向堆中的同一个实例

public static bool ReferenceEquals(object a,object b)

{
  return a == b;
}

(2)判断两个引用指向的实例是否相等

public override bool Equals(object obj)
{
    if(obj == null)
    {
        return false;
    }
    if(this == obj)
    {
        return true;
    }
    if(this.GetType() != obj.GetType())
    {
        return false;
    }
    //比较该类的所有字段
    //调用基类的Equals()方法,比较基类的所有字段
}

(3)重载 == 运算符,调用重写的Equals()方法。

(4)重载 != 运算符,调用重写的Equals()方法。 

(5)实现IComparable接口的CompareTo()方法,然后通过调用CompareTo()重载 >  >=  <  <= 运算符。

猜你喜欢

转载自www.cnblogs.com/riversouth/p/10334058.html