一尘不染

如何获得Swift枚举的计数?

swift

如何确定Swift枚举中的个案数?

(我想避免手动枚举所有值,或者尽可能避免使用旧的“enum_count技巧”。)


阅读 474

收藏
2020-07-07

共1个答案

一尘不染

从Swift 4.2(Xcode 10)开始,您可以声明符合CaseIterable协议,这适用于所有没有关联值的枚举:

enum Stuff: CaseIterable {
    case first
    case second
    case third
    case forth
}

现在可以简单地通过

print(Stuff.allCases.count) // 4

有关更多信息,请参见

2020-07-07