我有日期类型的对象。
我想对它们进行比较,并以以下方式编写了if条件:
if (([startDate1 isEqualToDate:[self getDefaultDate]]) || (startDate1 != [ self getDefaultDate] && m_selectedDate >= m_currentDate1 && cycleStopped))
{
///execute some condition
}
我在这种方法上是对还是错?
还有一件事。这样正确吗:
if (dtdate > [m_array objectatIndex:i]
{
}
因为我得到了随机的行为。
最佳答案
这是使用NSDate
方法compare:
的示例
if([startDate compare: endDate] == NSOrderedDescending) // if start is later in time than end
{
// do something
}
从类引用:
例如,如果您想比较两个日期并找到它们之间的秒数,则也可以使用
timeIntervalSinceDate:
方法。编辑:
if(([startDate1 compare:[self getDefaultDate]] == NSOrderedSame) || ([startDate1 compare: [self getDefaultDate]] != NSOrderedSame && (([m_selectedDate compare: m_currentDate1] == NSOrderedDescending) || [m_selectedDate compare: m_currentDate1] == NSOrderedSame) && cycleStopped))
关于ios - 如何比较 objective-c 中的两个NSDate对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8183472/