在Swift中访问枚举关联值
发布时间:2020-12-14 05:56:29 所属栏目:百科 来源:网络整理
导读:在这段代码中,我写了一个非常无用的枚举,定义了一个可能的数字与Int或Float。 我无法理解如何访问我使用关联设置的值。如果我尝试打印,我得到(枚举值) enum Number { case int (Int) case float (Float)}let integer = Number.int(10)let float = Number.
在这段代码中,我写了一个非常无用的枚举,定义了一个可能的数字与Int或Float。
我无法理解如何访问我使用关联设置的值。如果我尝试打印,我得到(枚举值) enum Number { case int (Int) case float (Float) } let integer = Number.int(10) let float = Number.float(10.5) println("integer is (integer)") println("float is (float)")
该值与枚举的实例相关联。因此,要在没有交换机的情况下访问它,您需要使一个getter并使其明确可用。如下所示:
enum Number { case int(Int) case float(Float) func get() -> NSNumber { switch self { case .int(let num): return num case .float(let num): return num } } } var vInteger = Number.int(10) var vFloat = Number.float(10.5) println(vInteger.get()) println(vFloat.get()) 也许未来可能会自动创建类似的东西,或者可以将更短的方便添加到语言中。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |