Phương thức Int16.GetHashCode() trong C# được dùng để trả về mã băm (hash code) cho thể hiện hiện tại.
Cú pháp
Cú pháp như sau:
public override int GetHashCode();
Ví dụ 1 - HashCode của 20 và 25
using System;
public class Demo
{
public static void Main()
{
short val1 = 20;
short val2 = 25;
Console.WriteLine("Value1 = " + val1);
Console.WriteLine("Value2 = " + val2);
Console.WriteLine("HashCode for value1 = " + val1.GetHashCode());
Console.WriteLine("HashCode for value2 = " + val2.GetHashCode());
Console.WriteLine("Are they equal? = " + (val1.Equals(val2)));
}
}
Kết quả
Value1 = 20 Value2 = 25 HashCode for value1 = 1310740 HashCode for value2 = 1638425 Are they equal? = False
Ví dụ 2 - HashCode của 0 và MaxValue
using System;
public class Demo
{
public static void Main()
{
short val1 = 0;
short val2 = Int16.MaxValue;
Console.WriteLine("Value1 = " + val1);
Console.WriteLine("Value2 = " + val2);
Console.WriteLine("HashCode for value1 = " + val1.GetHashCode());
Console.WriteLine("HashCode for value2 = " + val2.GetHashCode());
Console.WriteLine("Are they equal? = " + (val1.Equals(val2)));
}
}
Kết quả
Value1 = 0 Value2 = 32767 HashCode for value1 = 0 HashCode for value2 = 2147450879 Are they equal? = False