티스토리 뷰

반응형

함수란 어떤 인풋을 넣었을 때, 아웃풋이 나오는 것을 의미합니다.

 

예를 들어, 아래와 같은 방정식이 있다고 가정해 봅시다.

X = Y + 5

Y 값에 들어가는 다양한 인풋에 따라, 결과값 X가 달라지게 됩니다.

 

코틀린에서의 함수(=메소드) 또한 비슷한 개념으로, 코틀린에서는 아래와 같이 함수를 선언합니다.

반응형
fun 함수명 (변수명:타입, 변수명:타입, ...) : 반환형 {
    함수 내용
    return 반환값
}

다음의 예시를 통해서 좀 더 자세히 살펴봅시다.

fun calculator(first:Int, second:Int): Int {
    val result: Int = first + second
    return result
}

예시에서 calculator 함수는 첫번째 인자값으로 Int형 정수, 두 번째 값으로도 Int형 정수를 받습니다. : 뒤에는 반환타입이 위치하게 됩니다. 중괄호 안에는 함수 내용과 return 값이 오게 됩니다.

 

 

메인 함수에서 calculator 함수를 활용하면 다음과 같습니다.

fun main(array: Array<String>){
    //함수를 호출하는 방법
    val result = calculator(8, 15)
    println(result)

    //함수 호출 시에 인수를 명시적으로 전달하는 방법
    val result2 = calculator(first = 20, second = 35)
    println(result2)
}

위에서 처럼, 함수를 호출하는 경우, 함수명인 calculator 안에 인자값을 바로 넣어주면 됩니다. 인자값은 Int형이기 때문에 자료형에 맞는 타입으로 적어야 합니다.

 

함수를 호출 시에 인수를 명시적으로 전달도 가능합니다. 이때는 [인수 = 인자값]의 형태로 직접 명시를 해주면, first와 second 인수의 순서가 서로 바뀌어도 상관이 없습니다.

인수를 명시하지 않는 경우, 항상 먼저 적은 인수 순서대로 인식하게 됩니다. 

반응형
댓글