您的位置:首页 > 其它

Checklists学习日志之——对时间对操作

2015-12-01 19:51 239 查看
<span style="font-family: Arial, Helvetica, sans-serif;">import Foundation</span>
// 1、初始化
// 初始化一个当前时刻对象
var now = NSDate()
print("\(now)")
// 初始化一个明天当前时刻对象
var tomorrow = NSDate(timeIntervalSinceNow: 24*60*60)
print("\(tomorrow)")
// 初始化一个昨天当前时刻对象
var yestoday = NSDate(timeInterval: -24*60*60, sinceDate: now)
print("\(yestoday)")
// 初始化一个 2001-01-01 00:00:00 1小时后的时刻对象
var date1 = NSDate(timeIntervalSinceReferenceDate: 60*60)
print("\(date1)")
// 初始化一个 1970-01-01 00:00:00 1小时后的时刻对象
var date2 = NSDate(timeIntervalSince1970: 3600)
print("\(date2)")

// 2、获取时间描述
var dateDescription = now.description
print("\(dateDescription)")
// 3、获取时间间隔
// 获取今天到明天的时间间隔
var interval1 = tomorrow.timeIntervalSinceDate(now)
print("\(interval1)")
// 获取今天到明天的时间间隔
var interval2 = tomorrow.timeIntervalSinceNow
print("\(interval2)")
// 获取 2001-01-01 00:00:00 到今天的时间间隔
var interval3 = now.timeIntervalSinceReferenceDate
print("\(interval3)")
// 获取 1970-01-01 00:00:00 到今天的时间间隔
var interval5 = now.timeIntervalSince1970
print("\(interval5)")

// 4、随机返回一个不可能达到的未来时间、过去时间
date1 = NSDate.distantFuture() as NSDate
print("\(date1)")
date2 = NSDate.distantPast() as NSDate
print("\(date2)")

// 5、时间相加
// 返回一个后天当前时刻对象(在明天基础上再加上一天的时间)
var theDayAfterTomorrow = tomorrow.dateByAddingTimeInterval(24*60*60)
print("\(theDayAfterTomorrow)")

// 6、时间比较
// 比较两个时间对象是否相同返回布尔值(由于精度问题,isTheSameDate 为 false)
var isTheSameDate = theDayAfterTomorrow.isEqualToDate(NSDate(timeInterval: 2*24*60*60, sinceDate: now))
// 返回两个时间中较早的一个时间
var earlierOne = now.earlierDate(tomorrow)
// 返回两个时间中较晚的一个时间
var laterOne = now.laterDate(tomorrow)
// 比较两个时间对象是否相同并返回 NSComparisonResult 值
var compareResult = now.compare(tomorrow)



日期转换(NSDateFormatter)

import Foundation

// 方式1:用已有日期格式进行转换
var dateFormatter1 = NSDateFormatter()
dateFormatter1.dateStyle = NSDateFormatterStyle.MediumStyle
dateFormatter1.timeStyle = NSDateFormatterStyle.MediumStyle

var now = NSDate()
// Date 转 String
var nowString = dateFormatter1.stringFromDate(now)      // Mar 24, 2015, 9:00:00 PM
print("nowString:\(nowString)")
// String 转 Date
now = dateFormatter1.dateFromString(nowString)!
print("now:\(now)")

// 方式2:自定义日期格式进行转换
var dateFormatter2 = NSDateFormatter()
dateFormatter2.dateFormat = "yyyy-MM-dd HH:mm:ss"
// Date 转 String
nowString = dateFormatter2.stringFromDate(now)          // 2015-03-24 21:00:00
print("nowString:\(nowString)")
// String 转 Date
now = dateFormatter2.dateFromString(nowString)!
print("now:\(now)")
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: