ios - 如何获得枚举案例的值(value)?

标签 ios swift generics enums

我正在使用 swift enum。我的 enum 看起来像这样:

enum DataStructures<T> {
    case element(value: T)
    case elements(value: [T])
}

然后我像这样初始化了DataStructures:

DataStructures.element(value: resultElement)

resultElement 属于 ResultElement 类型:

resultElement: ResultElement

我的问题是:有没有办法从枚举的 case 中提取 resultElement 的值,以便在 DataStructures.element(value: resultElement) 是否已作为参数传递给某个方法?该参数也如下所示:

data: DataStructures<ResultElement>

感谢您的回答。

最佳答案

使用模式匹配:

if case .element(let value) = someParameter {
    print(value) // or do whatever you want with it
} else {
    // do some other thing in the case of the parameter not being .element
}

关于ios - 如何获得枚举案例的值(value)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43210857/

相关文章:

ios - 将 csv 转换为数组数组的 Plist

ios - 向上滑动和向右滑动在 XCUITest 上无法正常工作 - M1 Mac

swift - 使用公钥 (.cer) 加密 Json Payload

java - 类型参数的意义是什么?为什么我们需要在返回类型中添加它一次,然后在修饰符和返回类型之间添加它?

c# - 如何使用约束将 T 限制为值类型?

iphone - iOS 设备上的时间分析器——标记特定时刻?

ios - 在 swift 4 中添加 uiview 后按钮不起作用

arrays - 快速数组存储数据

ios - 生成字典函数的问题

c# - 无法隐式转换类型 System.Collections.Generic.IList System.Collections.Generic.List