Вот два способа сравнения двух DateTimes:
DateTime now = DateTime.Now;
DateTime then = new DateTime(2008, 8, 1);
// Method 1
if (DateTime.Compare(then, now) < 0)
// ...
// Method 2
if (then < now)
// ...
.Compare
возвращает целое число (-1,0,1), указывающее, является ли первый экземпляр более ранним, чем тот же или позже второго экземпляра.
Мой вопрос: зачем использовать .Compare
, когда я могу напрямую использовать реляционные операторы (<
, <=
, ==
, >=
, >
)? Мне кажется, используя .Compare
, мне нужно использовать реляционные операторы в любом случае (по крайней мере, в приведенном выше примере, иначе я мог бы создать оператор switch, проверяющий случаи -1, 0 и 1).
В каких ситуациях предпочтение или необходимость использования DateTime.Compare()
?