我ZonedDateTime
作为String
。
我希望能够使用隐式转换将字符串转换为ZonedDateTime
。
这是我的转换:
implicit def string2ZonedDatetime(s: String): ZonedDateTime = {
ZonedDateTime.parse(s)
}
这是我的用法:
val createdAt: ZonedDateTime = "2018-09-28T18:38:39+00:00"
但是当我执行这个时,我得到:
polymorphic expression cannot be instantiated to expected type
.
我有一种感觉,这与某种隐含的证据有关?类似于此处描述的内容。
但我不明白它如何适用于这个问题。
您需要导入隐式转换才能转换它
import java.time.ZonedDateTime
import scala.language.implicitConversions
implicit def string2ZonedDatetime(s: String): ZonedDateTime = ZonedDateTime.parse(s)
val createdAt: ZonedDateTime = "2018-09-28T18:38:39+00:00"
val nowTime: ZonedDateTime = ZonedDateTime.now.toString
println(createdAt, nowTime)
删除ZonedDateTime
类型推断有效。