더북(TheBook)

3.1.1 코틀린 함수의 구조

간단한 예부터 시작해보자. 반지름이 주어졌을 때 원의 넓이를 계산하는 함수를 정의해보겠다.

import kotlin.math.PI

fun circleArea(radius: Double): Double {
  return PI*radius*radius
}

fun main() {
  print("Enter radius: ")
  val radius = readLine()!!.toDouble()
  println("Circle area: ${circleArea(radius)}")
}

여기서 표준 상수 PI를 썼다. 이 값은 π의 근삿값을 표현하며, import 디렉티브를 사용해야 kotlin.math.PI라는 전체 이름이 아니라 PI라는 간단한 이름으로 이 값을 사용할 수 있다.

이제 circleArea 함수를 구성하는 요소를 자세히 살펴보자.

(함수라는 뜻의 영어 단어 function에서 온) fun 키워드는 컴파일러에게 함수 정의가 뒤따라온다는 사실을 알려준다.

변수 이름과 마찬가지로 아무 식별자나 함수 이름으로 쓸 수 있다(여기서는 circleArea를 썼다).

다음에는 괄호로 둘러싸여 있는 콤마(,)로 분리한 파라미터 목록이 온다. 파라미터 목록은 함수를 호출할 때 넘길 수 있는 데이터를 컴파일러에게 알려준다.

반환 타입(여기서는 Double)은 함수를 호출한 쪽에 돌려줄 반환값의 타입이다.

함수 본문(body){}로 감싼 블록이며, 함수의 구현을 기술한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.