Немного более простой способ сделать это, чем ответ Бенджамина Кокса, состоял бы в том, чтобы сделать что-то вроде
int x = 2; // wait 2 seconds at most
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
long startTime = System.currentTimeMillis();
while ((System.currentTimeMillis() - startTime) < x * 1000
&& !in.ready()) {
}
if (in.ready()) {
System.out.println("You entered: " + in.readLine());
} else {
System.out.println("You did not enter data");
}
. Это, однако, потребляет больше ресурсов, чем его решение.