Существует простой способ чтения с консоли.
Пожалуйста, найдите ниже код:
import java.util.Scanner;
public class ScannerDemo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// Reading of Integer
int number = sc.nextInt();
// Reading of String
String str = sc.next();
}
}
Для детального понимания, пожалуйста, обратитесь к нижеприведенным документам.
доктор
Теперь поговорим о подробном понимании работы класса Scanner:
public Scanner(InputStream source) {
this(new InputStreamReader(source), WHITESPACE_PATTERN);
}
Это конструктор для создания экземпляра сканера.
Здесь мы передаем InputStream
ссылку, которая является ничем иным, как System.In
. Здесь он открывает InputStream
канал для ввода с консоли.
public InputStreamReader(InputStream in) {
super(in);
try {
sd = StreamDecoder.forInputStreamReader(in, this, (String)null); // ## Check lock object
}
catch (UnsupportedEncodingException e) {
// The default encoding should always be available
throw new Error(e);
}
}
При передаче System.in этот код открывает сокет для чтения из консоли.