从Swift 4.2(Xcode10)开始,您可以声明符合CaseIterable
协议,这适用于所有没有关联值的枚举:
enum Stuff: CaseIterable {
case first
case second
case third
case forth
}
现在可以通过以下方法简单地获得病例数
print(Stuff.allCases.count) // 4
有关更多信息,请参见
主要内容:1. Objective-C集合快速枚举是Objective-C的功能,用于枚举集合。 因此,要了解快速枚举,首先需要了解集合,这将在下一节中进行说明。 1. Objective-C集合 集合是基本结构。它用于保存和管理其他对象。 集合的主要目的是提供一种有效存储和检索对象的通用方法。 有几种不同类型的集合。 虽然它们都能实现能够容纳其他对象的相同目的,但它们的主要区别在于检索对象的方式。 Objective-C中使用的最常见的
你能在Swift中继承枚举吗?关于枚举继承,应该知道哪些规则? 以下测试代码: 产生
快速枚举是Objective-C的功能,有助于枚举集合。 因此,为了了解快速枚举,我们首先需要了解集合,这将在下一节中进行说明。 Objective-C中的集合 集合是基本结构。 它用于保存和管理其他对象。 集合的整个目的是提供一种有效存储和检索对象的通用方法。 有几种不同类型的集合。 虽然它们都能实现能够容纳其他对象的相同目的,但它们的主要区别在于检索对象的方式。 Objective-C中使用的
问题内容: 如何确定Swift枚举中的个案数? (我想避免手动枚举所有值,或者尽可能避免使用旧的“enum_count技巧”。) 问题答案: 从Swift 4.2(Xcode 10)开始,您可以声明符合协议,这适用于所有没有关联值的枚举: 现在可以简单地通过 有关更多信息,请参见 SE-0194枚举案例的派生集合
问题内容: 背景 我正在尝试使用NSCoding协议对String样式的枚举进行编码,但是我遇到了转换为String和从String返回的错误。 解码和编码时出现以下错误: 字符串不可转换为舞台 额外参数ForKey:通话中 码 问题答案: 您需要将枚举值与原始值进行转换。在Swift 1.2(Xcode 6.3)中,如下所示: Swift 1.1(Xcode 6.1),代替: 迅速1.0(6.0
我想迭代一个TypeScript一个类型,并获取每个枚举的符号名,例如: