日期比较结果

时间:2012-08-09 15:51:10

标签: c#

为什么下面的代码导致(-1)?

当startDate设置为 7/9/12 5:00:00 AM 时,compareValue返回1.我期望在下面的场景中得到正数1,但得到(-1)。

startDate = "7/16/2012 5:00:00 AM"
endDate = "7/17/2012 5:00:00 AM"

//enter code here
int compareValue =  startDate.CompareTo(endDate);

3 个答案:

答案 0 :(得分:3)

-1表示startDate早于endDate,在这种情况下也是如此。根据{{​​3}} CompareTo返回:

  • < 0实例是预告片而不是值
  • == 0实例与值
  • 相同
  • > 0实例晚于值或值为null

答案 1 :(得分:1)

您好像在这里比较strings。如果您使用字符串'7/9/12 5:00:00 AM'进行比较,则会得到1的结果,因为'7/9/12 5:00:00 AM'的字典大于'7/17/2012 5:00:00 AM'

答案 2 :(得分:0)

CompareTo方法返回-1:7/16/2012 5:00:00 AM早于7/1/2012 5:00:00 AM

Link : http://msdn.microsoft.com/fr-fr/library/5ata5aya.aspx