본문 바로가기

Programming/Android

Kotlin function 의 return 타입을 void 로 하고 싶어요

반응형

callback lambda 를 function의 parameter로 넘겨서 사용하려고 합니다.

lambda의 정의는 간단하죠.


함수 정의

fun saveFile(value: Int, callback: (value: Int) -> Void) {

}


함수 사용

functionName(10, { value -> 

})


이렇게 하면 당연히 될줄 알았습니다. 대부분의 언어에서 return 값이 없으면 void 또는 빈값을 해서요...


https://kotlinlang.org/docs/reference/functions.html#unit-returning-functions

return 값이 없을 때는 Unit type 으로 return type 을 지정해야 한다고 되어 있습니다.


함수 정의

fun saveFile(value: Int, callback: (value: Int) -> Unit) {

}


이제 문제 없이 잘 build 됩니다.

Kotlin 에서는 void return 이 아니라 Unit return 해야 합니다.


반응형