Phương thức DateTimeOffset.GetHashCode() trong C# được sử dụng để trả về mã băm (hash code) cho đối tượng DateTimeOffset hiện tại. Phương thức này trả về mã băm số nguyên 32-bit có dấu.
Cú pháp
Dưới đây là cú pháp:
public override int GetHashCode ();
Ví dụ 1
Hãy xem ví dụ sau để triển khai phương thức DateTimeOffset.GetHashCode():
using System;
public class Demo {
public static void Main() {
DateTimeOffset dateTimeOffset1 = new DateTimeOffset(2019, 09, 10, 6, 20, 10, new TimeSpan(-5, 0, 0));
DateTimeOffset dateTimeOffset2 = new DateTimeOffset(2019, 11, 12, 8, 20, 10, new TimeSpan(-5, 0, 0));
Console.WriteLine("DateTimeOffset1 = {0}", dateTimeOffset1);
int hash1 = dateTimeOffset1.GetHashCode();
Console.WriteLine("DateTimeOffset1 HashCode = {0}", hash1);
int hash2 = dateTimeOffset2.GetHashCode();
Console.WriteLine("DateTimeOffset2 HashCode = {0}", hash2);
Console.WriteLine("DateTimeOffset2 = {0}", dateTimeOffset2);
int res = DateTimeOffset.Compare(dateTimeOffset1, dateTimeOffset2);
// returns <0 since DateTimeOffset1 is earlier than DateTimeOffset2
Console.WriteLine(res);
}
}
Đầu ra
Chương trình sẽ cho ra kết quả sau:
DateTimeOffset1 = 9/10/2019 6:20:10 AM -05:00 DateTimeOffset1 HashCode = -543087392 DateTimeOffset2 HashCode = 64112243 DateTimeOffset2 = 11/12/2019 8:20:10 AM -05:00 -1
Ví dụ 2
Ví dụ khác triển khai phương thức DateTimeOffset.GetHashCode():
using System;
public class Demo {
public static void Main() {
DateTimeOffset dateTimeOffset1 = new DateTimeOffset(2019, 11, 10, 6, 20, 10, new TimeSpan(-5, 0, 0));
Console.WriteLine("DateTimeOffset = {0}", dateTimeOffset1);
int hash = dateTimeOffset1.GetHashCode();
Console.WriteLine("DateTimeOffset HashCode = {0}", hash);
}
}
Đầu ra
Chương trình sẽ cho ra kết quả sau:
DateTimeOffset = 11/10/2019 6:20:10 AM -05:00 DateTimeOffset HashCode = -92293937