我正在 swift 中使用Xcode游乐场向下滚动。类型转换通常允许我使用Swift中的As运算符将类型转换为派生类型。但是当我尝试将var a作为Double,String进行类型转换时,它会给我错误。在此先感谢!!
var a = 1
var b = a as Int
var c = a as Double
var d = a as String
答案 0 :(得分:4)
你不能把它强加给对方,因为它们没有联系。您只能投放与UILabel
和UIView
或[AnyObject]
和[String]
相关的类型。将Int
投射到Double
就像试图将CGPoint
投射到CGSize
因此,要将Int
更改为Double
,您必须通过执行Double
制作Int
的新Double(Int)
。
这适用于所有数字类型,例如UInt Int64 Float CGFloat
等。
答案 1 :(得分:0)
试试这个:
var a = 1
var b = Int(a)
var c = Double(a)
var d = String(a)
答案 2 :(得分:0)
Cast as Int的工作原理,因为a
是Int
你应该这样做:
var c = Double(a)
var d = toString(a) //or String(a)