美文网首页
Swift-内联闭包速记参数($0, $1)

Swift-内联闭包速记参数($0, $1)

作者: 清蒸鱼跃龙门 | 来源:发表于2020-07-02 17:45 被阅读0次

    以数组中的排序方法为例,sorted可以传入一个闭包作为参数,限制为2个入参(Element)。


    sorted.png

    常规排序

    let names = ["Chris", "Alex", "Ewa", "Barry", "Daniella"]
    var reversedNames = names.sorted(by: { (s1: String, s2: String) -> Bool in
        return s1 > s2
    })
    print("names :"+"\(reversedNames)")
    

    闭包的入参s1,s2 返回s1 > s2

    使用$符号排序

    reversedNames = names.sorted(by: {$0>$1})
    

    原因

    Swift的语法糖。Swift会自动为内联闭包提供速记参数名称,可使$+数字来引用闭包参数对应的值。
    参考原文

    相关文章

      网友评论

          本文标题:Swift-内联闭包速记参数($0, $1)

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