C# HowTo 重写Equals和GetHashCode

直接上码:

    public class MyObject
    {
        public string name;

        public override bool Equals(object obj)
        {
            if (ReferenceEquals(null, obj)) return false;
            if (ReferenceEquals(this, obj)) return true;
            if (obj.GetType() != this.GetType()) return false;
            return ((MyObject)obj).name == this.name;
        }

        public override int GetHashCode()
        {
            return (name != null ? name.GetHashCode() : 0);
        }
    }

 

posted @ 2014-10-23 04:56  星月石  阅读(147)  评论(0编辑  收藏  举报