美文网首页
swift 遍历方法

swift 遍历方法

作者: 高乔人 | 来源:发表于2019-10-31 15:22 被阅读0次

    swift集合提供了很多遍历的函数用来对元素进行访问及操作,并大量应用了闭包。
    重点需要了解的函数有:
    forEach、filter、map、reduce
    forEach:循环遍历集合中的元素,相当于for-in 快速遍历
    let values = [5, 3, 2, 3,1]
    values.forEach {
    print("element is ($0)")
    }
    filter:/*
    函数原型:
    func filter(_ isIncluded: (Element) -> Bool) -> [Element]
    按照规则过滤原数组
    */
    var values = [1.5, 10, 4.88, 3.2, 8]

    let res = values.filter {
    return $0 > 4
    }
    //res 是values数组里 所有大于4 的元素组成的新数组

    map:/*
    函数原型:
    students.map(<#T##transform: (String) throws -> T##(String) throws -> T#>)
    数组映射
    */

    let input = ["0", "12", "name", "hi", "3"]
    let number = input.map {
    Int($0) //将元素转换为Int型
    }
    //注意类型转换可能失败,所以返回的是可选型
    //[Optional(0), Optional(12), nil, nil, Optional(3)]
    /*
    另外一个高度近似的函数
    flatMap
    隐含了两种操作
    1.解包
    2.展开并合并
    */

    let flatNumber = input.flatMap() {
    Int($0)
    }
    //[0, 12, 3]

    reduce:
    let numbers = [1, 2, 3, 4]
    let numberSum = numbers.reduce(0, { x, y in
    x + y
    })
    // numberSum == 10

    相关文章

      网友评论

          本文标题:swift 遍历方法

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