比较两个nsdatecomponent

ale*_*lex 4 iphone objective-c

如果我有两个nsdatecomponent,我想知道第一个对象中的TIME是否大于第二个.

例:

if (nsdatecomponentObject1 > nsdatecomponentObject2)
{
    //something
}
Run Code Online (Sandbox Code Playgroud)

因为这种方式不起作用,我怎么能这样做?

Jac*_*kin 7

使用compare:NSDateNSDateComponent.

if([[nsdatecomponentObject1 date] compare:[nsdatecomponentObject2 date]] == NSOrderedAscending)
Run Code Online (Sandbox Code Playgroud)

  • 我的比较结果总是0,为什么? (2认同)
  • 我相信`date`方法只会在`calendar`属性不是'nil`时返回日期.在`nil`上调用`compare:`方法会返回`0`,它会映射到`NSOrderedSame`. (2认同)