Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

C# Object.GetHashCode() วิธีการพร้อมตัวอย่าง


Object.GetHashCode() วิธีการใน C# ถูกใช้เพื่อทำหน้าที่เป็นฟังก์ชันแฮชเริ่มต้น

ไวยากรณ์

public virtual int GetHashCode ();

ตัวอย่าง

เรามาดูตัวอย่างกัน -

using System;
public class Demo {
   public static void Main() {
      Object ob = new Object();
      String str = "Jim";
      Type type1 = ob.GetType();
      Type type2 = str.GetType();
      Console.WriteLine("Hash Code = "+type1.GetHashCode());
      Console.WriteLine("Hash Code = "+type2.GetHashCode());
   }
}

ผลลัพธ์

Hash Code =30015890
Hash Code =21083178

ตัวอย่าง

เรามาดูตัวอย่างอื่นกันดีกว่า:

using System;
public struct Value {
   private int v1;
   private int v2;
   private int v3;
   public Value(int v1, int v2, int v3) {
      this.v1 = v1;
      this.v2 = v2;
      this.v3 = v3;
   }
   public override int GetHashCode() {
      return Tuple.Create(v1, v2, v3).GetHashCode();
   }
}
public class Demo {
   public static void Main() {
      Value v = new Value(1, 7, 12);
      Console.WriteLine(v.GetHashCode());
      v = new Value(12, 8, 7);
      Console.WriteLine(v.GetHashCode());
      v = new Value(8, 7, 12);
      Console.WriteLine(v.GetHashCode());
   }
}

ผลลัพธ์

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

1258
12803
8931