ios - 来自 rawValues 的 Swift 初始化数组
问题描述
我有一个枚举的原始值数组。在一行 Swift 代码中,是否可以从这个原始值数组中创建一个枚举数组?
解决方案
它甚至可以更容易。
enum Fruit: String {
case apple = "Apple"
case banana = "Banana"
}
let rawValues = ["Banana", "Apple", "Apple", "Pig"]
let enums = rawValues.compactMap(Fruit.init)
您可以简单地为 compactMap 提供 init 方法,它将消除所有无法创建水果的情况
推荐阅读
- react-native - 在 react-native-video 中使用 seek 的意外行为
- android - 缩放图像在某些设备中不起作用
- java - JSONObject 无法转换为 JSONArray , jsonObject.getJSONArray(KEY_DATA) 不起作用
- javascript - 在数组中更改名称 JSON
- python - 基于正则表达式 pandas 更新字段格式
- python - Keras Functional Api, InvalidArgumentError: input 1 should contain 3 elements, but got 2
- centos - Apache Drill 的 JPAM 配置
- javascript - 错误:JSON 数据的第 1 行第 1 列出现意外字符
- scala - Scala - Unit 类型的表达式不符合预期的 DataFrame 类型
- javascript - FlatList 根本不显示标题标签