在Swift中访问枚举关联值

在Swift中访问枚举关联值,第1张

概述在这段代码中,我写了一个非常无用的枚举,定义了一个可能的数字与Int或Float。 我无法理解如何访问我使用关联设置的值。如果我尝试打印,我得到(枚举值) enum Number { case int (Int) case float (Float)}let integer = Number.int(10)let float = Number.float(10.5)pri 在这段代码中,我写了一个非常无用的枚举,定义了一个可能的数字与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())

也许未来可能会自动创建类似的东西,或者可以将更短的方便添加到语言中。

总结

以上是内存溢出为你收集整理的在Swift中访问枚举关联值全部内容,希望文章能够帮你解决在Swift中访问枚举关联值所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1054688.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存