【发布时间】:2017-08-24 02:54:59
【问题描述】:
照样做!解开之前的一切
var a = value as! Double
a 不是可选的
在哪里
var a = value as? Double
a 是可选的 Double 吗?
【问题讨论】:
标签: swift
照样做!解开之前的一切
var a = value as! Double
a 不是可选的
在哪里
var a = value as? Double
a 是可选的 Double 吗?
【问题讨论】:
标签: swift
as? 产生一个可选值,如果它可以转换为指定类型,则该值是该值,如果不能,则为 nil。
as! 不产生可选值,它只产生一个指定类型的值,如果转换失败,它会中止程序。说 foo as! SomeType 与说 (foo as? SomeType)! 基本上是一样的(除了你会得到更好的错误消息)。
只有当你 100% 确定演员表会成功时,你才应该使用 as!(因为如果你错了,整个程序就会中止)。
【讨论】: