У меня возникли проблемы с while-loop
, так как оператор if предназначен для проверки, является ли кнопка пустой, если не повторяется. Однако, если весь оператор if находится в while-loop
, он показывает около 4 кнопок после запуска кода в первый раз.В то время как цикл работает некорректно
case HINT:
Random random = new Random();
int size = SizeOfPuzzle.currentRows;
int randomNumber1 = random.nextInt(size);
int randomNumber2 = random.nextInt(size);
if (puzzlePanel.arrayOfButtons[randomNumber1][randomNumber2].getText().isEmpty()) {
puzzlePanel.arrayOfButtons[randomNumber1][randomNumber2].setText(puzzle.getSingleLetter(randomNumber1, randomNumber2) + "");
}else {
boolean finished = true;
while (!finished) {
randomNumber1 = random.nextInt(size);
randomNumber2 = random.nextInt(size);
if (puzzlePanel.arrayOfButtons[randomNumber1][randomNumber2].getText().isEmpty()) {
puzzlePanel.arrayOfButtons[randomNumber1][randomNumber2].setText(puzzle.getSingleLetter(randomNumber1, randomNumber2) + "");
break;
}
}
}
break;
И что же вы вопрос или проблема? Вы должны добавить ясность к сообщению. –
Одна строка перед 'while (! Finished)' вы устанавливаете 'finished' в' true', условие не будет оцениваться как 'true', так как'! True' является 'false'. – Maroun
Пожалуйста, прочитайте: [Как отлаживать небольшие программы] (http://ericlippert.com/2014/03/05/how-to-debug-small-programs/). – honk