如何快速将枚举存储到可变数组中

Gob*_*i M 2 ios swift ios9

请问如何在枚举中将枚举存储在可变数组中?

下面针对Objective-C进行了讨论,显然它可以正常工作。 如何在NSMutableArray中存储枚举值

它使用int值存储array.addObject(0)

Cri*_*tik 6

你的意思是这样吗?

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
Run Code Online (Sandbox Code Playgroud)

如果要将枚举值存储为整数,则可以将枚举声明为rawValueas IntrawValue在数组中使用该属性:

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
Run Code Online (Sandbox Code Playgroud)