What does $0 and $1 mean in Swift Closures?

后端 未结 6 2366
你的背包
你的背包 2020-12-12 12:12
let sortedNumbers = numbers.sort { $0 > $1 }
print(sortedNumbers)

Can anyone explain, what $0 and $1 means in swift?

6条回答
  •  离开以前
    2020-12-12 12:30

    It represents shorthanded arguments sent into a closure, this example breaks it down:

    Swift 4:

    var add = { (arg1: Int, arg2: Int) -> Int in
        return arg1 + arg2
    }
    add = { (arg1, arg2) -> Int in
        return arg1 + arg2
    }
    add = { arg1, arg2 in
        arg1 + arg2
    }
    add = {
        $0 + $1
    }
    
    let result = add(20, 20) // 40
    

提交回复
热议问题