코틀린: 함수정의시 = 대신 {} 를 사용하면 type mismatch 가 발생함.
조회수 726회
fun main(args:Array<String>){
var result:Int
result = highOrder({x:Int, y:Int -> x+y}, 10, 20)
println(result)
}
fun highOrder(sum:(Int, Int)->Int, a:Int, b:Int) = sum(a,b)
의 경우 정상적으로 30이 반환되는데
fun main(args:Array<String>){
var result:Int
result = highOrder({x:Int, y:Int -> x+y}, 10, 20)
println(result)
}
fun highOrder(sum:(Int, Int)->Int, a:Int, b:Int) {
return sum(a,b)
}
로 표현을 바꿔서 컴파일하면 type mismatch가 뜹니다. 코틀린 함수 문법에서 두 형태 모두 같은 취급이 되는것이 아닌가요?
-
(•́ ✖ •̀)
알 수 없는 사용자 - 〉
댓글 입력