Map
使用 map 来遍历集合并对集合中每一个元素进行同样的操作。
let arr = [1, 2, 3]
let squares = arr.map{$0 * $0}
// print [1, 4, 9]
Filter
filter函数会遍历一个集合,并返回一个数组,其中包含了集合中满足过滤条件的元素。
let result = array.filter{
$0 % 2 == 0
}
Reduce
组合集合中的所有元素并返回一个非集合类型的值
let items = [2.0,4.0,5.0,7.0]
let total = items.reduce(10.0,+)
// 28.0
FlatMap
将一个二维数组拆开展平
let collections = [[5,2,7],[4,8],[9,1,3]]
let flat = collections.flatMap { $0 }
// [5, 2, 7, 4, 8, 9, 1, 3]
它可以判断集合中的不可选值,并将不可选值移出集合:
let people: [String?] = ["Tom",nil,"Peter",nil,"Harry"]
let valid = people.flatMap {$0}
// ["Tom", "Peter", "Harry"]
网友评论