Vai depender do seu ambiente. Se você estiver executando um UI balanço via javawpor exemplo, então há não é um console para exibir. Se você estiver executando em um IDE, isso dependerá muito do tratamento do IDE específico do IO do console.
Na linha de comando, deve ficar bem. Amostra:
import java.io.Console;
public class Test {
public static void main(String[] args) throws Exception {
Console console = System.console();
if (console == null) {
System.out.println("Unable to fetch console");
return;
}
String line = console.readLine();
console.printf("I saw this line: %s", line);
}
}
Execute isso apenas com java:
> javac Test.java
> java Test
Foo <---- entered by the user
I saw this line: Foo <---- program output
Outra opção é usar System.in, que você pode agrupar em BufferedReaderlinhas para ler, ou usar Scanner(agrupar novamente System.in).