Класс Console

Последнее обновление: 28.12.2015

Специально для работы с консолью в Java определен класс Console, который хранится в пакете java.io. Он не получает консольный ввод-вывод сам по себе, а использует уже имеющиеся потоки System.in и System.out. Но в то же время Console значительно упрощает ряд операций, связанных с консолью.

Для получения объекта консоли надо вызвать статический метод System.console():

Console console = System.console();

Основные методы класса Console:

  • flush(): выводит на консоль все данные из буфера

  • format(): выводит на консоль строку с использованием форматирования

  • printf(): выводит на консоль строку с использованием форматирования (фактически то же самое, что и предыдущий метод)

  • String readLine(): считывает с консоли введенную пользователем строку

  • char[] readPassword(): считывает с консоли введенную пользователем строку, при этом символы строки не отображаются на консоли

Используем класс Console:

import java.io.Console;

public class Program {

    public static void main(String[] args) {
        
        // получаем консоль
        Console console = System.console();
		if(console!=null){
			// считываем данные с консоли
			String login = console.readLine("Введите логин:");
			char[] password = console.readPassword("Введите пароль:");
			
			console.printf("Введенный логин: %s \n", login);
			console.printf("Введенный пароль: %s \n", new String(password));
		}
    }
}

Важно, что доступ к консоли мы можем получить только из самой консоли. При запуске, например, в Netbeans вызов System.console() будет возвращать значение null. Поэтому при работе с консолью желательно проверять полученное значение на null. Ну а если мы запустим программу в командной строке, то естественно у нас все будет работать:

Консоль в Java
Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850