从列表中选择特定类型的项目

时间:2015-10-02 15:48:07

标签: types filter swift2

给定像[1,2,3,"x"]["1","2","3","x"]这样的集合或数组,我怎样才能最好地提取(或许使用.filter)整数(例如)。在上面的任何一个例子中,我都希望得到答案[1,2,3]

1 个答案:

答案 0 :(得分:2)

对于混合阵列,我使用filteris

let hybrid = [1,2,3,"x"]

let ints = hybrid.filter { $0 is Int }

print(ints)  // [1, 2, 3]

对于字符串数组,我使用flatMapInt初始值设定项:

let strings = ["1","2","3","x"]

let ints = strings.flatMap { Int($0) }

print(ints)  // [1, 2, 3]
相关问题