閉包與陣列的Map方法
範例:
var numberArray = [1,3,5,2,4,6]
let newNumber = numberArray.map ({
(number:Int) in
print(number)
})
若不是要「印出來每次的結果」,而是要「回傳的範例」:
var numberArray = [1,3,5,2,4,6]
let newNumber = numberArray.map ({
(number:Int)->Int in
return number
})
轉成省略簡寫的Closure:
var numberArray = [1,3,5,2,4,6]
let newNumber = numberArray.map {in $0}
print(newNumber)
練習:請將下列Closure簡寫化
var numberArray = [1,3,5,2,4,6]
let newNumber = numberArray.map({
(a:Int) -> String in
return "This is number \(a)"
})
print(newNumber)
解答:
var numberArray = [1,3,5,2,4,6]
let newNumber = numberArray.map{"This is number \($0)"}
print(newNumber)