클로져!
func calculator (n1:Int, n2: Int, operation: (Int, Int) -> Int) -> Int {
return operation(n1, n2)
}
func add (no1: Int, no2: Int) -> Int {
return no1 + no2
}
func multiply (no1: Int, no2: Int) -> Int {
return no1 * no2
}
calculator(n1: 2, n2: 3, operation: add)
calculator(n1: 2, n2: 3, operation: multiply)
클로져를 사용해서 간단하게 정리 가능
calculator(n1: 2, n2: 3, operation: { (no1: Int, no2: Int) -> Int in
return no1 * no2
})
calculator(n1: 2, n2: 3, operation: {(no1, no2) in no1 * no2})
calculator(n1: 2, n2: 3, operation: {$0 * $1})
let result = calculator(n1: 2, n2: 3) {$0 * $1}
위에서부터 점차 아래까지 줄이기가 가능해진다!!
let array = [6, 2, 3, 9, 4, 1]
func addOne (n1: Int) -> Int {
return n1+ 1
}
array.map(addOne)
//[7,3,4,10,5,2]
array.map{$0 + 1}
//[7,3,4,10,5,2]
let newArray = array.map{"\($0)"}
print(newArray)
// 스트링으로 바뀐 어레이 나온다