使用 flatMap() 从 Array 中提取给定类型的值
things
数组包含 Any
类型的值。
let things: [Any] = [1, "Hello", 2, true, false, "World", 3]
我们可以提取给定类型的值并创建该特定类型的新数组。假设我们想要提取所有 Int(s)
并以安全的方式将它们放入 Int
数组中。
let numbers = things.flatMap { $0 as? Int }
现在 numbers
被定义为 [Int]
。flatMap
函数丢弃所有 nil
元素,因此结果仅包含以下值:
[1, 2, 3]