#java #arrays
#java #массивы
Вопрос:
Я использую некоторые новые методы, которые обычно не использую (random.nextInt()), так что помощь очень ценится.
int[][] A = new int[100][100];
private void room()
{
int xCo = random.nextInt(92);
int yCo = random.nextInt(92);
int xCoPLUS = random.nextInt(7);
int yCoPLUS = random.nextInt(7);
for(int across = xCo; across < across xCoPLUS; across )
{
for(int vert = yCo; vert < vert yCoPLUS; vert )
{
A[vert][across] = 1;
}
}
}
Я получаю ошибку в строке A [vert] [поперек] = 1;
A[][] равно 100 на 100.
Спасибо, ребята!
Комментарии:
1. Объявлен ли в классе, в котором находится этот метод; я добавлю его 🙂
Ответ №1:
Я думаю, вы действительно имеете в виду:
for(int across = xCo; across < xCo xCoPLUS; across )
{
for(int vert = yCo; vert < yCo yCoPLUS; vert )
{
A[vert][across] = 1;
}
}
Обратите внимание на изменение, которое я внес в ваши условия цикла, поскольку across < across xCoPLUS
всегда будет true, по крайней мере, пока вы не получите целочисленное переполнение 🙂
Ответ №2:
Условия цикла across < across xCoPLUS
и vert < vert yCoPLUS
всегда будут оставаться верными при заданных xCoPLUS
и yCoPlus
ненулевых значениях, таким образом, ваши циклы будут повторяться бесконечно, таким образом, проходя мимо конца массива.