UI --日期类简单介绍

一、日期类简单介绍

对日期我们经常使用到的两个类

1、NSDate,NSDate的对象表示一个具体的时间点

2、NSDateFormatter对象将时间转化为字符串或者反转

二、创建NSDate对象的几种方式以及区别

1、获取到GTM时间(世界标准时间),比中国时间早八个小时

NSDate *data = [NSDate date];

2、从当前GTM时间往后推八个小时的时间,如果为负数就是往前推八个小时的时间

NSTimeInterval timeInterval = 8*60*60;

NSDate *chinaDate = [NSDate dateWithTimeIntervalSinceNow:timeInterval];

3、从计算机时间(1970-01-01 00:00:00)后推八个小时后的时间。

NSDate *since1970Date = [NSDate dateWithTimeIntervalSince1970:timeInterval];

4、从自定义的时间往后推八个小时后的时间。

NSDate *sinceCustomDate = [NSDate dateWithTimeInterval:timeInterval sinceDate:date];

5、从2001-01-01 00:00:00往后推八个小时后的时间。

NSDate *sinceReferenceDate = [NSDate dateWithTimeIntervalSinceReferenceDate:timeInterval];

6、永远不可能到达的一个点

NSDate *futureDate = [NSDate distantFuture];

7、一个无限过去的时间点

NSDate *pastDate = [NSDate distantPast];

三、NSDate对象常用的方法

1、从计算机时间(1970-01-01 00:00:00)到date时间的时间差(秒为单位)

timeIntervalSince1970

2、从(2001-01-01 00:00:00)到date时间的时间差(秒为单位)

timeIntervalSinceReferenceDate

3、从当前时间到date时间的时间差

timeIntervalSinceNow

4、当前时间偏移多少秒后的新时间

dateByAddingTimeInterval

5、两个日期之间的时间差

timeIntervalSinceDate

6、日期的比较

earlierDate//谁早返回谁

laterDate//谁晚返回谁

isEqualToDate//两个日期是否相等

四、日期与字符串的转换

1、日期格式如下:

y  年

F  月份中的周数

E  周几,EEEE星期几

M 表示 月

m 表示 分

H 表示 24小时制

h 表示 12小时制

s 表示 秒

S 表示 毫秒

d  月份中的天数

a  Am/pm

k  一天中的小时数(1-24)

K  am/pm 中的小时数(0-11)

H  一天中的小时数

h  am/pm 中的小时数(1-12)

2、字符串与日期的转换

1)将日期转换为字符串,转换过后就自动换成系统所在时区的时间

[dateFormatter stringFromDate:date]

2)将字符串转化为日期

[dateFormatter dateFromString:str]

你可能感兴趣的:(UI --日期类简单介绍)