개발 공부/Kotlin / / 2019. 5. 21. 11:14

[Kotlin] 코틀린 function(함수)

코틀린 함수 형태 

  • 리턴값이 없는 경우

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)

 

  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유