App노자

[Kotlin] 함수 본문

Android/Kotlin

[Kotlin] 함수

앱의노예 2023. 1. 27. 08:56

1. 함수란?


함수는 인자를 입력 받아 기능을 수행하고 결괏값을 반환하는 코드의 모음이다

Kotlin에서 함수를 선언하려면  fun이라는 키워드를 사용한다

함수의 매개변수는 자동으로 val 선언되며 따로 키워드를 사용하거나 함수 안에서 변경할 수 없다

또 매개변수를 반환값에 바로 사용하거나 return문 생략을 해서 가독성을 올리는것도 가능하다

 

https://kotlinlang.org/docs/kotlin-tour-functions.html

 

Functions | Kotlin

 

kotlinlang.org

2. 함수의 구조

fun sum(a: Int, b: Int): Int{
    var nTemp: Int = a + b
    return  nTemp
    
//    fun 함수명(매개변수: 타입): 반환타입{ }
}

fun sum(a: Int, b: Int): Int {
    return a + b
}

fun sum(a: Int, b: Int): Int = a + b

fun sum(a: Int, b: Int) = a + b

  

Kotlin에서 함수를 선언하려면  fun이라는 키워드를 사용한다

함수의 매개변수는 자동으로 val 선언되며 따로 키워드를 사용하거나 함수 안에서 변경할 수 없다

또 매개변수를 반환값에 바로 사용하거나 return문 생략을 해서 가독성을 올리는것도 가능하다

 

2. Unit 반환문이 없는 함수

fun main() {
    printSum(1,2)
    printMul(3,4)
}

fun printSum(a: Int, b: Int): Unit {
    println("printSum = ${a+b}")
}

fun printMul(a: Int, b: Int){
    println("printMul = ${a*b}")
}

 

함수의 반환값은 생략이 가능하며 반환타입을 생략하면 자동으로 Unit타입이 적용된다

Unit타입은 지정해도 되고 생략해도 된다 

 

3.  매개변수

fun main() {
    Twice(2)
    Mul(a = 3,b = 4)
    varargs(1,2,3,4,54,6,)
}

fun Twice(a: Int, b: Int = 2): Int {
    var result = a * b
    println(result)
    return result
}

fun Mul(a: Int, b: Int){
    println("Mul = ${a*b}")
}

fun varargs(vararg counts: Int) {
    for (num in counts) {
        println(num)
    }
}

 

'Android > Kotlin' 카테고리의 다른 글

[Kotlin] 흐름 제어문과 예외 처리문  (0) 2023.04.08
[Kotlin] 조건문과 반복문  (0) 2023.04.02
[Kotlin] 고차함수와 람다식  (0) 2023.02.14
[Kotlin] Null safety  (0) 2023.01.25
[Kotlin] 변수와 자료형  (0) 2023.01.24