如何在Swift中使用枚举将简单索引建立到数组中?
我是一名试图理解Swift的C程序员。这很困惑。
var arr: [String] = ["2.16", "4.3", "0.101"]
enum Ptr: Int {
case first = 0
case second = 1
case third = 2
}
var ix = Int(Ptr.first)
print (ix)
let e = Double (arr[ix])
`
我希望Ptr.first会产生一个0整数,可以作为数组arr的索引。
答案 0 :(得分:2)
之所以不起作用,是因为枚举中的所有情况(第一,第二,第三)基本上都是Ptr
类型(枚举的类型)。因此,为了获得0,您需要访问案例的rawValue
属性,该属性是一个Int:
var ix = Ptr.first.rawValue //accessing the case's rawValue property
print (ix)
let e = Double (arr[ix])
希望有帮助!