日期字符串之间的比较

字符串比较

1
2
3
4
5
6
7
8
//字符串比较
NSString *string @"hello nihao";
NSString *otherString = @"hello niyeyao";
if([string compare:otherString] == NSOrderedAscending){
    NSLog(@"我比你大");
}else{
    NSLog(@"我是小三");
}

日期比较

1
2
3
4
5
6
7
8
//日期比较
NSDate *nowDate = [NSDate date];
NSDate *yesterdayDate = [[NSDate alloc] initWithTimeIntervalSinceNow:-24 * 60 * 60];
if([nowDate compare:yesterdayDate] == NSOrderedAscending){
    NSLog(@"我是今天");
}else{
    NSLog(@"我是我昨天");
}

当然这里也可以,将指定的字符串转换为时间进行比较,字符串的时间格式要跟自己设定的时间格式相对应

1
2
3
4
5
6
7
8
9
10
11
12
13
 //日期比较
NSString *nowDateString = @"2013/7/13";
NSString *yesterdayDateString = @"2013/7/12";
NSDateFormatter *dateFromatter = [[NSDateFormatter alloc] init];
[dateFromatter setDateFormat:@"yy/MM/dd"];
NSDate *nowDate = [dateFromatter dateFromString:nowDateString];
NSDate *yesterdayDate = [dateFromatter dateFromString:yesterdayDateString];
 
if([nowDate compare:yesterdayDate] == NSOrderedAscending){
    NSLog(@"我是今天");
}else{
    NSLog(@"我是我昨天");
}

结果他的表现就是

1
2
2013-07-20 18:18:03.165 寻艺[90532:c07] 我比你大
2013-07-20 18:18:03.168 寻艺[90532:c07] 我是我昨天

这里需要注意的就是

NSOrderedAscending

我们在Xcode定位的话

会找到这样的代码

1
typedef NS_ENUM(NSInteger, NSComparisonResult) {NSOrderedAscending = -1L, NSOrderedSame, NSOrderedDescending};

结果 跟 -1 0 1应该是一样的。


转载:http://blog.youkuaiyun.com/wally1985/article/details/23738649

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值