Je suis un instructeur qui crée un jeu de jouets tic tac, pour le faire jouer automatiquement.
var r = Random() val randInt = r.nextInt(emptyCell.size-0) + 0 // adding 0 here
pourquoi devons-nous ajouter +0 ici?
3 Réponses :
Il n'y a aucune raison pour que vous deviez écrire + 0
dans ce cas. nextInt
renvoie un Int
, donc ajouter 0 comme Int
ne fait absolument rien - ne change pas le type ou n'affecte pas la valeur - vous vous attendez.
Probablement une faute de frappe dans le didacticiel.
Merci. je l'ai.
C'est un billet
pour changer une valeur si vous le souhaitez. L'auteur vient de vous montrer où et comment le mettre.
Voici à quoi devrait ressembler votre code:
var random = Random() var randomIndex: Int? randomIndex = random.nextInt(emptyCell.size - 1) + 2 // two values instead of 00 println("randomIndex $randomIndex") val emptyCellId = emptyCell[randomIndex] println("emptyCellId $emptyCellId") var btnSelect: Button? btnSelect = setButtonId(noOfCards, emptyCellId)
Alors pourquoi n'écrivons-nous pas r = random.nextInt (emptyCells.size) pour choisir au hasard l'un des index à partir de là. directement?
Le moyen le plus simple de le découvrir - poser cette question à l'auteur - Dharma Kshetri (vous pouvez le trouver sur SO).
L'ajout de 0 fonctionnera mais cela ne changera rien.
Notez que vous utilisez java.util.Random qui limiterait votre code à la JVM.
Si vous utilisez kotlin.random.Random votre code ciblera toutes les plates-formes que Kotlin fait et serait plus simple car vous n'avez pas besoin d'instancier une classe.
Vous pouvez l'utiliser comme ceci:
val randInt = Random.nextInt(emptyCell.size)
Consultez le autres variantes de nextInt
si vous n'avez pas besoin de spécifier de liens ou vous devez spécifier une limite supérieure.