如何在Swift中將枚舉存儲在可變數組中?如何在swift中將枚舉存儲到可變數組中
下面討論Objective-C,顯然它工作正常。 How to store enum values in a NSMutableArray
它使用array.addObject(0)
存儲爲int值;
如何在Swift中將枚舉存儲在可變數組中?如何在swift中將枚舉存儲到可變數組中
下面討論Objective-C,顯然它工作正常。 How to store enum values in a NSMutableArray
它使用array.addObject(0)
存儲爲int值;
您的意思是?
enum MyEnum {
case Option1,
Option2,
Option3,
Option4
}
var array: [MyEnum] = [.Option1, .Option2]
array.append(.Option3)
let b = MyEnum.Option4
array.append(b)
array[2] // Option3
如果你想存儲枚舉值作爲整數,你可以聲明枚舉爲具有rawValue
作爲Int
和陣列內使用rawValue
屬性:
enum MyEnum: Int {
case Option1,
Option2,
Option3,
Option4
}
var array: [Int] = [MyEnum.Option1.rawValue, MyEnum.Option2.rawValue]
array.append(MyEnum.Option3.rawValue)
let b = MyEnum.Option4
array.append(b.rawValue)
(array as NSArray).objectAtIndex(2) // a NSNumber with value 2
取得的每@ cristik回答
這解決了我的PBLM,
讓利區間:NSMutableArray的= [Color.red.rawValue,Color.bl ack.rawValue];
請給我們一些關於枚舉的代碼,以及如何在數組中使用它,否則問題太廣泛 – Cristik
爲什麼你認爲你需要將它存儲爲NSNumber? – Fogmeister