언어/Kotlin

[Kotlin] 코틀린 가변인자 vararg 사용법

청포도막대사탕 2025. 5. 10. 14:33
반응형

varage (variable number of arguments)

함수에 가변 개수의 인자를 전달할 때 사용

같은 타입인 여러개의 인자를 한번에 다룰 수 있음

 

fun printAll(vararg messages: String) {
    for (msg in messages) {
        println(msg)
    }
}

printAll("hi","hello","world")

 

함수 하나당 varage하나만 사용가능

매개변수가 여러개일 경우, varage를 맨 마지막에 작성

 

배열과의 차이점

함수 내에서는 동일하게 처리하지만

호출할때 배열로 안 만들고 바로 값만 넘김

 

아래와 같이 스프레드 연산자인 *를 사용하여 배열을 가변인자로 넘길 수 있음

fun logMessages(tag: String, vararg messages: String) {
    for (msg in messages) {
        println("[$tag] $msg")
    }
}

val logs = arrayOf("시작", "진행 중", "완료")

logMessages("DEBUG", *logs) // 배열을 풀어서 넘김
반응형