Зачем добавлять 0 при использовании nextInt () - PullRequest
0 голосов
/ 09 января 2019

Я слежу за инструктором, создающим игру Tic Tac Toy, чтобы сделать ее автоигрой.

var r = Random()
val randInt = r.nextInt(emptyCell.size-0) + 0    // adding 0 here

почему мы должны добавить +0 здесь?

Ответы [ 3 ]

0 голосов
/ 09 января 2019

Это billet для изменения значения, если вы хотите. Автор просто показал вам, куда и как его поставить.

Вот как должен выглядеть ваш код:

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)
0 голосов
/ 11 января 2019

Добавление 0 будет работать, но это ничего не изменит.

Обратите внимание, что вы используете Java java.util.Random , который ограничивает ваш код JVM.

Если вы используете kotlin.random.Random , ваш код будет нацелен на все платформы, которые делает Kotlin, и будет проще, потому что вам не нужно создавать экземпляр класса.

Вы можете использовать это так:

val randInt = Random.nextInt(emptyCell.size)

Проверьте другие варианты nextInt, если вам не нужно указывать облигации или вам нужно указать верхнюю границу.

0 голосов
/ 09 января 2019

Нет причины, по которой вам пришлось бы записывать + 0 в этом случае. nextInt возвращает Int, поэтому добавление 0 к нему как Int абсолютно ничего не меняет - не меняет тип и не влияет на значение - как и следовало ожидать.

Вероятно, опечатка в учебнике.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...