当前位置:  开发笔记 > 编程语言 > 正文

Swift 3.0中的Date.copy()

如何解决《Swift3.0中的Date.copy()》经验,为你挑选了1个好方法。

由于切换到Swift 3.0,并且随着NSDate更改为Date,该类不再符合NSCopying协议.

在Swift 2中,这是有效的:

let newDate = oldDate.copy()

但现在返回编译器错误.

在这种情况下,复制Date对象的最佳方法是什么?

let newDate = Date(timeIntervalSince1970: oldDate.timeIntervalSince1970)

这样就可以了,但它看起来并不特别优雅.并且它可能(理论上)容易失去精度,因为TimeInterval是一个Double(我们无法确认Date对象内部使用 - 或者总是使用 - 一个Double).



1> JoGoFo..:

在我完成输入之前解决了我自己的问题.希望它会帮助别人.

Swift 3中的日期现在是一个结构,而不是一个类.哪个是值类型.这意味着它不需要"复制",只需将其分配给新变量即可复制数据:

let newDate = oldDate

推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有