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