以下代码在 Swift 1 中抛出错误:无法调用非函数类型"日历"的值
class CyclicDay {
lazy var baseline: NSDate? = {
var components = NSDateComponents()
components.day = 02
components.month = 05
components.year = 2018
return NSCalendar.currentCalendar.datefromComponents(components)
}()
}
NSDate 和 NSCalendar 函数的 Swift 3 等价物是什么?
Swift 3的NSDate
、NSDateComponents
和NSCalendar
的等价物是:
Date
DateComponents
Calendar
实际上,每个(NS)Type
在Swift 3中都有等效的Type
。
现在在 Swift 3 中,你的代码将如下所示:
class CyclicDay {
lazy var baseline: Date? = {
var components = DateComponents()
components.day = 02
components.month = 05
components.year = 2018
return Calendar.current.date(from: components)
}()
}