如何在for case let
模式匹配中获取迭代枚举元素的索引?
我有一个枚举:
enum EnumType {
case A(associatedValue: Int)
case B(associatedValue: String)
}
和枚举元素数组:
let arrayOfEnums: [EnumType] = [.A(1), B("A"), .A(2), B("B")]
在for
循环中,我只迭代A
个元素,我想得到arrayOfEnums
数组中当前迭代元素的索引:
for case let EnumType.A(associatedValue) in arrayOfEnums {
// operations here
}
我知道我可以从Array.enumerated()
获取索引,但我不知道如何在for case
中执行此操作。
答案 0 :(得分:1)
我找到了解决方案:
for case let (index, EnumType.A(associatedValue)) in arrayOfEnums.enumerated() {
// operations here
}