我有一个带有以下名称和日期对的NSArray。注意:日期始终在我的自定义数组的索引1中
MyCustomArray:
(
"Toms Bday"
"2012-01-10"
)
(
"Jesscia Bday"
"2012-01-27"
)
(
"Jills Bday"
"2012-03-03"
)
(
"Joes Bday"
"2012-04-15"
)
我的数组中有数百个名称日期对。因此,对于给定的StartDate =“2012-01-01”和endDate =“2012-01-31”,我只想获取以下记录。我怎么做?
(
"Toms Bday"
"2012-01-10"
)
(
"Jesscia Bday"
"2012-01-27"
)
我调查了Why can't NSDate be compared using < or >?这个帖子,但仍然不明白。
最佳答案
考虑到您的日期格式非常简单,您可以将它们作为字符串进行比较,结果应该是正确的:
NSString *start = @"2012-01-01";
NSString *end = @"2012-01-31";
NSString *date = @"2012-01-10";
if ([start compare:date] == NSOrderedAscending &&
[end compare:date] == NSOrderedDescending) {
// Note: might be descending for start and ascending for end, i'm not 100% sure, try both
// valid date
}
关于iphone - 使用NSDate范围搜索NSArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14071286/