NSDate NSComponent NScalendar NSTimer概念

使用日期 时间 定时器

内容:

  • 1使用NSDate 创建表示今天的日期
int main(int argc, const char * argv[]) {
    @autoreleasepool {
       
        NSDate*todaysDate=[NSDate date];
        NSLog(@"今天的日期是:%@",todaysDate);
  
    }
    return 0;
}




运行结果为:
2016-07-14 13:27:18.385 NSDate今天的日期[4342:1876448] 今天的日期是:2016-07-14 05:27:18 +0000
Program ended with exit code: 0
  • 2 通过NSDateComponents 创建自定义日期

需要使用到三个Foundation类:

  • 1.NSDate
  • 2.NSDateComponent
  • 3.NSCalendar
    • NSDate :表示日期的最基本的类
    • NSDateComponent 构成日期与时间的细节信息
    • NSCalendar 真实世界的日历

简单总结一下就是说: NSDate 得到的日期(带有格式),是从NSDateComponent 获得的(Component可以自己定义 ,NSDate从中获取你定义的时间);
NSCalendar 什么时候用呢?
就是在使用NSDate 获取时间的时候,要指定一个NSCalendar(需要一个指向日历的引用"如果代码中没有用到NSCalendar 其实使用的是默认的")

代码表示:

NSDate NSComponent NScalendar NSTimer概念_第1张图片
通过component创建自定义日期.jpeg

)

设置你感兴趣的日期属性,指定时区,获得NSDate对象 需要有指向日历的引用,后从component中获取 于设置相对应的日期对象:通过这个步骤就能得到相应的信息

  • 3 将字符串转为日期
    • NSDateFormatter 创建日期格式化器,并将日期格式化为字符串显示给用户
 NSString*dateString=@"03/12/2016";
        
        NSDateFormatter*df=[[NSDateFormatter alloc]init];
        
        df.dateFormat=@"MM/dd/yyyy";
        
        NSDate*date=[df dateFromString:dateString];
        
        NSLog(@"%@",date);
结果:
2016-07-14 15:17:19.350 NSDate今天的日期[5078:2215365] 2016-03-11 16:00:00 +0000
  • 4使用定时器调度,并重复执行任务
NSTimer*time=[NSTimer alloc ]init...

NSRunLoop*runloop=[NSRunLoop currentRunLoop];
[runLoop addTimer:timer forMode:NSDefaultRunLoopMode];

这里有一个运行循环的引用要注意 一开始还真的不好懂,不过我就不深究了,就当是固定格式了

你可能感兴趣的:(NSDate NSComponent NScalendar NSTimer概念)