美文网首页
Swift高阶函数map,filter,reduce

Swift高阶函数map,filter,reduce

作者: 赵哥窟 | 来源:发表于2020-08-04 17:24 被阅读0次

    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);
    

    相关文章

      网友评论

          本文标题:Swift高阶函数map,filter,reduce

          本文链接:https://www.haomeiwen.com/subject/fjiwrktx.html