【问题标题】:What is difference between as? and as! in swift [duplicate]as 和有什么区别?并作为!迅速[重复]
【发布时间】:2017-08-24 02:54:59
【问题描述】:

照样做!解开之前的一切

var a = value as! Double 

a 不是可选的

在哪里

var a = value as? Double

a 是可选的 Double 吗?

【问题讨论】:

标签: swift


【解决方案1】:

as? 产生一个可选值,如果它可以转换为指定类型,则该值是该值,如果不能,则为 nil。

as! 不产生可选值,它只产生一个指定类型的值,如果转换失败,它会中止程序。说 foo as! SomeType 与说 (foo as? SomeType)! 基本上是一样的(除了你会得到更好的错误消息)。

只有当你 100% 确定演员表会成功时,你才应该使用 as!(因为如果你错了,整个程序就会中止)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-06-07
    • 1970-01-01
    • 1970-01-01
    • 2017-02-17
    • 2011-09-27
    • 2013-04-22
    • 2012-03-29
    相关资源
    最近更新 更多