Phương thức DateTime.Compare() trong C# được dùng để so sánh hai thể hiện DateTime. Phương thức trả về giá trị nguyên:
- < 0 - Nếu date1 sớm hơn date2
- 0 - Nếu date1 giống date2
- > 0 - Nếu date1 muộn hơn date2
Cú pháp
Cú pháp như sau:
public static int Compare(DateTime d1, DateTime d2);
Tham số d1 và d2 là hai ngày cần so sánh.
Ví dụ 1 - So sánh ngày sớm hơn và muộn hơn
using System;
public class Demo
{
public static void Main()
{
DateTime d1 = new DateTime(2019, 11, 20, 6, 20, 40);
DateTime d2 = d1.AddYears(5);
Console.WriteLine("Initial DateTime = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d1);
Console.WriteLine("New DateTime (adding years) = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d2);
int res = DateTime.Compare(d1, d2);
// Trả về < 0 vì d1 sớm hơn d2
Console.WriteLine(res);
}
}
Kết quả
Initial DateTime = 20 November 2019, 06:20:40 New DateTime (adding years) = 20 November 2024, 06:20:40 -1
Ví dụ 2 - So sánh hai ngày giống nhau
using System;
public class Demo
{
public static void Main()
{
DateTime d1 = new DateTime(2019, 11, 20, 6, 20, 40);
DateTime d2 = new DateTime(2019, 11, 20, 6, 20, 40);
Console.WriteLine("DateTime 1 = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d1);
Console.WriteLine("DateTime 2 = {0:dd} {0:y}, {0:hh}:{0:mm}:{0:ss} ", d2);
int res = DateTime.Compare(d1, d2);
// Trả về 0 vì d1 bằng d2
Console.WriteLine(res);
}
}
Kết quả
DateTime 1 = 20 November 2019, 06:20:40 DateTime 2 = 20 November 2019, 06:20:40 0