以下是比较两个 DateTime 的两种方法:
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
方法,我仍然需要使用关系运算符(至少在上面的示例中是这样的;或者我可以创建一个检查-1、0和1情况的switch语句)。
在哪些情况下应该优先或必须使用DateTime.Compare()
方法呢?