Swift高阶函数map,filter,reduce

时间:2022-07-23
本文章向大家介绍Swift高阶函数map,filter,reduce,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

map

map 用于映射, 可以将一个列表转换为另一个列表.

将Int数组转换为String数组

//$0代表数组的元素
let array = [1, 2, 3, 4, 5 , 6, 7]
let result = array.map{
  String($0)
}
print("result:",result);

filter

filter:过滤,可以对数组中的元素按照某种规则进行过滤 输出数组大于5的元素

let filtrArray = [1, 2, 3, 4, 5 , 6, 7]
        let result2 = filtrArray.filter{
          $0 > 5
  }
print("result2:",result2);

reduce

计算

//计算数组array元素的和
//在这里$0和$1的意义不同,$0代表元素计算后的结果,$1代表元素
//10代表初始化值,在这里可以理解为 $0初始值 = 10
let result3 = array.reduce(10){  
  $0 + $1
}

合并

let result4 = array.reduce(""){$0 + "($1)"}// 转换为字符串并拼接
print("result4:",result4);