수색…


통사론

  • Vararg 키워드 : vararg 는 메소드 선언에서 변수 수의 매개 변수가 사용됨을 나타 내기 위해 사용됩니다.
  • 스프레드 연산자 : 내용을 개별 매개 변수로 "펼치기"위해 함수 호출에 사용되는 배열 앞에 별표 ( * )가 있습니다.

기본 사항 : vararg 키워드 사용

vararg 키워드를 사용하여 함수를 정의하십시오.

fun printNumbers(vararg numbers: Int) {
    for (number in numbers) {
        println(number)
    }
}

이제 원하는만큼 함수에 여러 유형의 매개 변수를 전달할 수 있습니다.

printNumbers(0, 1)                // Prints "0" "1"
printNumbers(10, 20, 30, 500)     // Prints "10" "20" "30" "500"

주 : Vararg 매개 변수 매개 변수 목록의 마지막 매개 변수 여야 합니다.

스프레드 연산자 : 배열을 vararg 함수에 전달

배열은 스프레드 연산자 * 사용하여 vararg 함수로 전달 될 수 있습니다.

다음 함수가 있다고 가정합니다 ...

fun printNumbers(vararg numbers: Int) {
    for (number in numbers) {
        println(number)
    }
}

다음과 같이 함수에 배열전달할 수 있습니다.

val numbers = intArrayOf(1, 2, 3)
printNumbers(*numbers)

// This is the same as passing in (1, 2, 3)

스프레드 연산자는 매개 변수 의 중간 에 사용할 수도 있습니다 ...

val numbers = intArrayOf(1, 2, 3)
printNumbers(10, 20, *numbers, 30, 40)

// This is the same as passing in (10, 20, 1, 2, 3, 30, 40)


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow