Object-C中的NSDate

来源:互联网 发布:win域名不能备案 编辑:程序博客网 时间:2024/05/31 18:49
  • 如java语言中的时间处理类,在Object-C中也有相应的时间处理类(NSDate),类中提供了大量的方法来操作时间,如:dateFromString(把String转成date类型数据);stringFromDate(把date类型转换成String);等等。
  • 创建Date
  • dateWithTimeIntervalSinceNow
  • addTimeInterval
  • isEqualToDate
  • earlierDate
  • laterDate
  • timeIntervalSinceDate
  • distantFuture
  • distantPast
  • dateFromString
  • dateFromString

大概有这么些常用的操作方法!


创建Date

  • [NSDate date],使用NSDate类的一个静态方法初始化;
    这里写图片描述
    这里创建的时间是当前的时间,当然也可以在自己定义的时间基础上创建时间,如:
    这里写图片描述
    这里的time1的单位是秒。

dateWithTimeIntervalSinceNow(NSTimeInterval)

  • 该方法表示在当前的时间基础上增加多少秒。
    这里写图片描述
    这里的100是秒,返回增加100秒后的时间NSDate。

NSDate时间比较

  • isEqualToDate,比较两个时间,返回BOOL。
    这里写图片描述
    在时间比较中还有两个经典的方法,用来比较返回两个时间中比较早的那个或者比较迟的那个时间:
    这里写图片描述
    方法一:earlierDate比较两个时间,返回相对较早的那个时间
    方法二:laterDate返回相对较迟的那个时间

时间间隔

  • timeIntervalSinceDate,取得两个时间之间相隔多少秒。
    这里写图片描述

获取一个将来比或以前比较久远的时间

  • distantFuture,获取一个将来比较久的时间;
  • distantPast,获取一个以前比较远的时间;
    这里写图片描述

时间格式化

  • stringFromDate,把date转成string;
  • dateFromString,把string转成date;
    这里写图片描述
    注意: 这里需要用到一个NSDateFormatter格式刷。

总结:
NSDate是OC里面Foundation基础框架里面的一个基本时间处理工具类,类似于Java中java.utils下面的Date时间类。其所能提供的方法包括:
创建一个时间([NSDate date]);
在当前时间基础上创建延时时间(dateWithTimeIntervalSinceNow);时间之间的比较(isEquesTodate,earlierDate,laterDate);
取得两时间之间的差值(timeIntervalSinceDate);
时间的格式化于字符串之间的转换(dateFromString,stringFromDate)等方法。

0 0