Example:
importFoundation
varnumberExample = [12,43,2,24,3]
funcnumberOrder (numbers : [Int], compare : (Int,Int) ->Bool) -> [Int] {
varnewNumber : [Int] = numbers
foriin0...(newNumber.count-2) {
forjin(i +1)...(newNumber.count-1) {
if(compare(newNumber[i],newNumber[j])) {
swap(&newNumber[i], &newNumber[j])
}
}
}
returnnewNumber
}
varresultNum =numberOrder(numberExample) {
(vara:Int, b:Int) ->Boolin
return(a < b )
}
println(resultNum)
闭包(closures)是一种函数格式,可以用作另一个函数的参数。
在实际使用函数时,需要提供闭包内容,可以是一个已经定义好的函数,也可以是无名函数。