ios – 如何在Swift中解包数组元素? (即数组为数组)

前端之家收集整理的这篇文章主要介绍了ios – 如何在Swift中解包数组元素? (即数组为数组)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
假设我有一个String数组,我想将它映射到一个Int数组
我可以使用map功能
var arrayOfStrings: Array = ["0","a"]
let numbersOptional = arrayOfStrings.map { $0.toInt() }
// numbersOptional = "[Optional(0),nil]"

Numbers现在是一个Int?数组,但我想要一个Int数组.
我知道我可以这样做:

let numbers = arrayOfStrings.map { $0.toInt() }.filter { $0 != nil }.map { $0! }
// numbers = [0]

但这似乎并不是很迅速.从Int数组转换?对于Array of Int,需要使用相当多的样板函数调用filter和map.有更快捷的方法吗?

解决方法

更新:Xcode 7.2•Swift 2.1.1
let arrayOfStrings = ["0","a","1"]
let numbersOnly = arrayOfStrings.flatMap { Int($0) }

print(numbersOnly)   // [0,1]

猜你在找的iOS相关文章