iOS获取一年后的时间

虽然说是获取一年后的时间,但是可以通过设置不同的数值,达到获取N年前或N年后的时间的效果。
数值>0时,获取之后的时间,如果数值<0则为获取之前的时间。

NSDate *date = [NSDate date];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *components = [[NSDateComponents alloc] init];
[components setYear:1];
[components setMonth:0];
[components setDay:0];
// laterDate则为一年后的时间
NSDate *laterDate = [calendar dateByAddingComponents:components toDate:date options:NSCalendarMatchStrictly];

善于使用NSDateComponents提供的属性,可以计算出你想要的任何时间,N年前、N年后、N个月前、N个月后、N天前、N天后…

@property NSInteger year;
@property NSInteger month;
@property NSInteger day;
@property NSInteger hour;
@property NSInteger minute;
@property NSInteger second;