[英]Swift enums as index to an array
如何在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的索引。
之所以不起作用,是因為枚舉中的所有情況(第一,第二,第三)基本上都是Ptr
類型(枚舉的類型)。 因此,為了獲得0,您需要訪問案例的rawValue
屬性,它是一個Int:
var ix = Ptr.first.rawValue //accessing the case's rawValue property
print (ix)
let e = Double (arr[ix])
希望有幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.