【发布时间】:2017-04-04 04:36:23
【问题描述】:
我试图从这个guide 获取两个日期的时差。我不确定为dateComponents 参数输入什么。当我直接传入[.hour, .minute]时,会报错:
Playground execution failed: error: MyPlayground.playground:10:46: error: type of expression is ambiguous without more context
let timeDifference = calendar.dateComponents([.hour, .minute], from: stopTime!, to: date!)
^~~~~~~~~~~~~~~~
```
我首先尝试将其声明为常量,但不确定类型是什么。参数的类型为Set<Calendar.Component>,但当我尝试说它是向上Component、DateComponent 或CalendarComponent 时出现错误。
````
let timeFormatter = DateFormatter()
timeFormatter.dateFormat = "hh:mm a "
let time = "12:03 pm"
let stopTime = timeFormatter.date(from: time)
let date = Date()
let calendar = Calendar.current
let components:[DateComponent] = [.hour, .minute]
let timeDifference = calendar.dateComponents(components, from: stopTime!, to: date!)
【问题讨论】:
标签: swift date time calendar swift3