Recherche…


Syntaxe

  • Vararg Mot clé : vararg est utilisé dans une déclaration de méthode pour indiquer qu'un nombre variable de paramètres sera accepté.
  • Spread Operator : Un astérisque ( * ) avant un tableau utilisé dans les appels de fonction pour "déployer" le contenu dans des paramètres individuels.

Notions de base: Utilisation du mot-clé vararg

Définissez la fonction à l'aide du mot clé vararg .

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

Vous pouvez maintenant transmettre autant de paramètres (du type correct) à la fonction que vous le souhaitez.

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

Notes: Les paramètres Vararg doivent être le dernier paramètre de la liste de paramètres.

Spread Operator: passer des tableaux dans des fonctions vararg

Les tableaux peuvent être transmis aux fonctions vararg à l'aide de l' opérateur Spread , * .

En supposant que la fonction suivante existe ...

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

Vous pouvez passer un tableau dans la fonction comme ça ...

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

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

L'opérateur spread peut également être utilisé au milieu des paramètres ...

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
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow