1

为什么下面的代码会导致 (-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);
4

3 回答 3

3

-1表示startDate早于endDate,在这种情况下是正确的。根据文档 CompareTo返回:

  • < 0 实例早于值
  • == 0 实例与值相同
  • > 0 实例晚于值或值为空
于 2012-08-09T15:52:40.793 回答
1

你似乎在strings这里比较。如果您使用字符串 '7/9/12 5:00:00 AM' 进行比较,您会得到1因为'7/9/12 5:00:00 AM'在字典上大于'7/17/2012 5:00:00 AM'.

于 2012-08-09T16:39:52.510 回答
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
于 2012-08-09T15:54:57.493 回答