728x90
반응형
함수는 학교 수학 시간에 배우는 것 처럼 무엇인가 내부적으로 로직을 처리하는 것을 말한다.
Kotlin에서도 함수를 사용할 수 있다. 아래와 같은 코드를 보고 하나씩 분석해 보자
fun main() {
val r = multiplyByTwo(5)
println(r)
println(multiplyByThree(5))
println(multiplyByFour(5))
sayHello()
sayGoodBye()
}
fun multiplyByTwo(i: Int): Int {
println("Inside multiplyByTwo")
return i * 2
}
fun multiplyByThree(i: Int): Int = i * 3
fun multiplyByFour(i: Int) = i * 4
fun sayHello() {
println("Hello")
}
fun sayGoodBye(): Unit {
println("good bye")
}
우선 함수에 반환형을 적을 수 있다.
Java에서는 메소드명(함수명) 전에 반환형을 적는데, Kotlin에서는 ':'을 적고 나서 그 뒤에 적는다. 전반적으로 이 형태르 사용하는 것 같다.
함수의 본문이 하나의 식으로만 이뤄져 있다면 multiplyByThree, multiplyByFour 처럼 바로 작성할 수 있다.
둘 간의 차이는 반환형을 명시 했느냐, 아니냐의 차이이다. 반환형을 명시하지 않는다 하더라도 Kotlin은 반환형을 추론해서 동작한다.
다음으로 볼 것은 sayHello, sayGoodBye 함수인데, 두 함수 모두 반환값이 없다.
Java에서는 반환 값이 없을 경우에는 void라는 예약어를 사용하는데, Kotlin에서는 반환값을 생략하거나 Unit 이라고 적어주면 된다.
위의 코드를 실행한 결과는 아래와 같다.
728x90
반응형
'Develop! > Kotlin' 카테고리의 다른 글
for loop in kotlin (0) | 2023.07.21 |
---|---|
String Template in Kotlin (0) | 2023.07.19 |
Data Type in Kotlin (0) | 2023.07.14 |
var and val (0) | 2023.07.13 |
Hello World for Kotlin (0) | 2023.07.13 |