mygomii

[Kotlin] 2.1 기본 요소 : 함수 변수 본문

Kotlin

[Kotlin] 2.1 기본 요소 : 함수 변수

mygomii 2025. 3. 5. 09:00
반응형

2.1.1 첫 번째 코틀린 프로그램 작성

fun main() {
    println("Hello World!")
}
  • 함수를 선언할 때 fun 키워드 사용
  • 코틀린은 간결성을 강조
  • 세미클론(;)을 붙이지 않는다.

2.1.2 파라미터와 반환값이 있는 함수 선언

fun max(a: Int, b: Int): Int {
   return if (a > b) a else b 
}
  • max 는 함수이름
  • (a: Int, b: Int) 는 파라미터
  • Int 는 반환타입
  • return if (a > b) a else b 함수 본문
💡 문(statement)과 식의 구분
코틀린에서는 if는 식이지 문이 아님, 식은 값을만들어내며 다른 식의 하위 요소로 계산에 참여할 수 있는 반면, 문은 자신을 둘거싸고 있는 가장 안쪽 블록의 최상위 요소로 존재하면 아무런 값을 만들어내지 않는다는 차이가 있음.

2.1.3 식 본문을 사용해 함수를 더 간결한게 정의

fun max(a: Int, b: Int): Int = if (a > b) a else b 
  • 위의 형태는 *식 분문 함수(expression body function)*이라고 부른다

모든 함수는 반환 타입이 정해져야 함, 하지만 위 본문 함수의 경우 굳이 반환타입을 적지 않아도 컴파일러가 함수 본문 식을 분석해서 식의 결과 타입을 함수 반환 타입으로 정해줌 ⇒ 이런 분석을 ‘타입 추론’ 이라 부름


2.1.4 데이터를 저장하기 위해 변수 선언

코틀린에서 변수 선언은 키워드(val 또는 var)로 시작하고 그 뒤에 변수이름이 옴, 그리고 변수 이름 뒤에 타입을 명시할 수 있음

val question: String = "이건 질문이다" 

2.1.5 변수를 읽기 전용 변수나 제대입 가능 변수로 표시

val 는 value에서 가져옴, 읽기 전용 참조(read-only reference)를 선언. val로 선언된 변수는 단 한 번만 대입할수 있음 (자바에서는 final)

var 는 variable에서 가져옴, 제대입 가능한 참조(reassignable reference) 선언, 초기화가 이뤄진 다음이라도 다른 값을 대입할 수 있음

2.1.6 더 쉽게 문자열 형식 지정 : 문자열 템플릿

fun main() {
  val name = "고미정"
  println("Hello $name") // <= 이렇게 간단하게 사용 가능 
}

 

 

kotlin 2.0 기준입니다. 

반응형