代码之家  ›  专栏  ›  技术社区  ›  Den

重写GetHashCode[重复]

  •  31
  • Den  · 技术社区  · 14 年前

    如您所知,GetHashCode返回一个半唯一值,该值可用于标识集合中的对象实例。作为一个好的实践,建议重写此方法并实现自己的方法。

    我的问题是-在处理自定义对象时是否重写此方法?如果是,您使用什么算法来生成唯一的ID?

    我正在考虑生成一个guid,然后从那个标识符中获取整数数据。

    6 回复  |  直到 9 年前
        1
  •  25
  •   Henk Holterman    9 年前

    GetHashCode() Equals() operator== operator!=

    here on MSDN

        3
  •  1
  •   Brian Mains    14 年前

        4
  •  1
  •   Community CDub    8 年前
        6
  •  -2
  •   Matthew Abbott    14 年前

    public class Test
    {
      public string Text { get; set; }
      public int Age { get; set; }
    
      public override GetHashCode()
      {
        int result = 
          string.IsNullOrEmpty(Text) ? 0 : Text.GetHashCode()
          + Age.GetHashCode();
    
        return result;
      }
    }