import kotlin.math.PI

//Functions 함수

//함수 선언할때는 fun keyword를 사용한다.
fun hello() {
    return println("Hello, world!")
}

//x, y는 함수의 파라미터이고 Int타입. return타입 또한 Int타입.
/*fun sum(x: Int, y: Int): Int {
    return x + y
}*/
//위의 함수를 Single-expression function으로 바꾸면
fun sum(x: Int, y: Int) = x + y
//이렇게 할 수 있음. 대괄호를 없애고 할당연산자 = 를 통해 함수몸체를 선언한다. 코틀린의 type inference덕분에 return type또한 제거할 수 있다.

//Named arguments, Default parameter values
//파라미터에 이름을 붙이면 코드의 가독성이 좋아짐
fun printMessageWithPrefix(message: String, prefix: String = "Info") {
    println("[$prefix] $message")
}

//Return이 없는 함수
fun printMessage(message: String) {
    println(message)
    // `return Unit` or `reutnr` is optional
    //함수에서 return value가 없으면 그 함수의 return type은 Unit이다. Unit은 오직 하나의 value를 갖는 type이다.
    //함수 몸체 안에 명시적으로 선언할 필요가 없다.
}

fun main() {
    hello()
    println(sum(1, 2))
    printMessageWithPrefix("Hello, world!", "Greeting")
    //named arguments를 통해 직접 할당하게 되면 파라미터의 순서를 바꿀 수 있다.
    printMessageWithPrefix(prefix = "Log", message = "Hello")
    //prefix는 default value를 주어서 파라미터를 안넘기면 기본값이 출력된다.
    printMessageWithPrefix("This is a custom message.")
    //[Info] This is a custom message.

    //return이 없는 함수
    printMessage("This function doesn't have return type.")
}


fun circleArea(radius: Int)  =  radius * radius * PI

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

 

Functions | Kotlin

 

kotlinlang.org

 

'정보 > Language' 카테고리의 다른 글

[Javascript] Object, Array  (0) 2024.01.09
Kotlin: Control Flow  (0) 2023.07.31
Kotlin : Hello, world!  (0) 2023.07.20
Enum을 사용한 메뉴관리  (0) 2022.08.26
java.util.HashMap  (0) 2022.07.29

https://kotlinlang.org/docs/kotlin-tour-hello-world.html

 

Hello world | Kotlin

 

kotlinlang.org

Top level 선언

main 함수 밖 선언 및 할당.

문자열 template

Kotlin 변수 : var, val 

//변수는 main함수 바깥에서 선언될 수 있는데, 이런 경우에는 top level에 선언되었다고 한다.
val value = 10
//value = 20 //val로 선언했기 때문에 이 후에 재할당이 불가하다.
var variable = 20
//var variable2 //선언만 하면 안되고 초기화까지해야한다.

//fun 으로 function을 선언한다.
fun main() {
    println("Hello, world!")
    println(value)

    variable = 30
    println(variable)

    val customers = 10
    //String templates
    //그냥 해당 값만 출력할거면 $변수명 으로
    println("There are $customers customers")
    //값을 수정한다면 ${}를 사용한다.
    println("There are ${customers + 1} customers")
}

//read-only variables with val 변하지않는 값
//mutable variables with var 할당 후 변할 수 있는 값을 담는 곳
//공식문서에서는 모든 변수를 val로 선언하고 할당 후 변할 수 있는 값은 var로 선언할 것을 추천함.

 

'정보 > Language' 카테고리의 다른 글

Kotlin: Functions  (0) 2023.08.02
Kotlin: Control Flow  (0) 2023.07.31
Enum을 사용한 메뉴관리  (0) 2022.08.26
java.util.HashMap  (0) 2022.07.29
JavaScript가 뭔가요 ?  (0) 2022.01.17

+ Recent posts