코틀린 함수 형태
-
리턴값이 없는 경우
fun 함수명(파라미터):Unit{
}
Unit은 반환값이 없는 타입을 의미합니다. 생략 가능.
- 사용 예(메인 함수)
fun main (args:Array<String>):Unit{
}
//OR
fun main (args:Array<String>){
}
- 리턴값이 있는 경우
fun 함수명(파라미터):리턴 타입{
return 값
}
- 사용 예1
fun makeCake(sugar:Int, egg:Int):String{
var cake = "$sugar, $egg 가 들어간 케이크가 완성됐습니다."
return cake
}
- 사용 예2
fun makeCream():Int{
return 60
}
함수 한줄 표현
코틀린 함수를 간단히 줄여서 다음과 같이 표현 할 수도 있습니다.
- 사용 예1
fun pluseValue() = 100+100
//pluseValue()란 함수를 실행하면 100+100 결과값을 리턴함.
//여기서 리턴 타입(Int)은 생략 됨.
fun main(args:Array<String>){
val value = pluseValue()
println(value)
}
//결과
200
100+100은 Int값이란걸 알 수 있어서(유추) 리턴 타입 생략이 가능합니다.
- 사용 예2
fun min(x:Int, y:Int):Int = if(x>y) y else x
fun test(num:Int) = if(num>=0) num else -num
파라미터가 기본 값을 갖는 함수
전달된 값이 없을 경우는 함수에 지정한 기본값으로 함수가 실행되고
전달된 값이 있으면 그 값으로 함수를 실행합니다.
fun getAverage(a:Int, b:Int, print:Boolean = false):Double{
val result = (a+b)/2.0
if(print){
println("true 입니다.$result")
}
return result
}
fun main(args:Array<String>){
getAverage(1,2)
getAverage(1,2,true)
}
//결과
1.5
true 입니다.1.5
1.5
특정 파라미터에만 값 전달
getAverage(print = true)
'개발 공부 > Kotlin' 카테고리의 다른 글
[Kotlin]코틀린 for문, for의 조건 표현식 (0) | 2019.05.20 |
---|---|
[Kotlin]코틀린 배열 arrayOf(), Array (0) | 2019.05.19 |
[Kotlin]코틀린 조건문 when (0) | 2019.05.18 |
변수 선언 및 문자열 (0) | 2018.04.25 |
함수 선언과 조건문 (0) | 2018.04.24 |