@Ogalan

Как сделать многократный ввод с клавиатуры с возможностью пропустить ход?

Добрый день! Подскажите, плз, с реализацией. Есть программка - идея - многократный ввод с клавиатуры, по очереди. Программа ждет несколько секунд ввода,после чего что-то там делает с числом, или символом, допустим сравнивает с чем-то. И так по очереди. Идея в том, чтоб пользователь мог пропустить ход (несколько ходов) и потом опять ввести символ, и программа его считала. Мой код, как я понял, ждет ввода символа. То есть программа продолжает работать, но после нескольких скипов новый символ не считывается.

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class InputNumbersLogic extends Thread {
int temp;
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

public void run() {
inputNumber();
}

public void waitFourSeconds() {
start();
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}

public void inputNumber() {

try {
temp = Integer.parseInt(reader.readLine());
System.out.println(temp);

} catch (Exception e) {
System.out.println("Only numeric values are allowed");
}
checkExit();
}

public void checkExit() {
if (temp == 100) {
System.exit(0);
}
}
}

public class Main {
public static void main(String[] args) {
int exit = 0;

while (true) {
if (exit != 100) {
System.out.println("input the number, please");
System.out.println("if you want to quit press 100");
InputNumbersLogic inputNumbersLogic = new InputNumbersLogic();
inputNumbersLogic.waitFourSeconds();
exit=inputNumbersLogic.temp;
}
}
}
}
Благодарю за помощь
  • Вопрос задан
  • 64 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы