Kotlin/ 함수

yellow·2021년 4월 6일
0

Kotlin

목록 보기
3/13

함수

📌함수를 선언하는 방법


기본

fun 함수명(인수명1: 자료형, 인수명2: 자료형 ...): 반환형{
	함수 내용
    	return
}
  • 예시
fun plus(first: Int, second: Int): Int{
	var result = first + second
    	return result
}
  • 함수를 호출할 때 매개변수 순서를 바꿔서 출력하고싶다면, 매개변수를 명시적으로 전달하는 방법도 있다.
   plus(second = 3, first = 4)

반환값이 없는 함수 선언

fun 함수명(인수들): Unit{
	함수 내용
}
  • :Unit은 생략 가능하다.

디폴트값을 갖는 함수 선언

fun 함수명(인수명1: 자료형, 인수명2: 자료형 = 디폴트값 ...){
	함수 내용
}
  • 예시
fun plusFive(first: Int, second: Int = 5): Int{
	var result = first + second
    	return result
}

fun main(array: Array<String>){
	println(plusFive(3)) // 8
}
  • 디폴트값이 있는 매개변수가 디폴트값이 없는 매개변수보다 앞에 있으면, 매개변수를 명시적으로 전달해서 함수를 호출해야한다.
  • 예시
fun plusFive(first: Int = 5, second: Int): Int{
	var result = first + second
    return result
}

fun main(){
	println(plusFive(second = 3)) // 8
}

가변인자를 받는 함수 선언

fun 함수명(vararg 인수명: 자료형){
	함수 내용
}
  • 예시
fun plusMany(vararg numbers: Int): Int{
    var result = 0
    for (number in numbers){
        result = result + number
    }
    return result
}

fun main(array: Array<String>){
    println(plusMany(1, 2, 3)) // 6
    println(plusMany(1, 2)) // 3
}

간단하게 함수 선언

  • 간단한 연산을 수행하는 것과 같은 함수들은 간단하게 선언할 수 있다
  • 코드가 줄어드는 장점이 있으나 기본형으로 코드를 작성하는 것을 추천!
  • 예시
fun plusShort(first: Int, second: Int) = first + second

내부 함수

  • 함수 내에 함수 선언이 가능하다.
  • 문법적인 부가 비용을 줄이고 깔끔하게 코드를 조직할 수 있다.
    코드의 중복도 줄여준다.
  • 예시
fun showMyPlus(first: Int, second:Int): Int{
    fun plus(first: Int, second:Int): Int{
        return first + second
    }
    return plus(first,second)
}
profile
할 수 있어! :)

0개의 댓글