Читаем строку с клавиатуры

 

Вы, наверное, обратили внимание, что раньше мы старательно избегали получать данные от пользователя. Значения всем переменным мы задавали непосредственно в программе. Сейчас мы и узнаем, как же прочитать данные, введенные пользователем. Не все пока будет ясно (например, исключения), но код будет работать, и его можно применять в программах.

 

Вот пример класса, который умеет читать строку с клавиатуры и выводить ее на экран:

import java.io.*;

class Privet{public static void main(String [] args) throws

IOException{

System.out.println("Name, please ");

String s;

BufferedReader in=new BufferedReader(new

 

InputStreamReader(System.in));

s=in.readLine(); //Читаем с клавиатуры

System.out.println("Hi, "+s+"!");

}

}

 

Что мы тут делаем? Сначала мы подключаем java.io.*. Это сделано для того, чтобы не писать длинные имена. Можно было обойтись и без этого - вот так:

...

public static void main(String [] args) throws java.io.IOException{

...

java.io.BufferedReader in=new java.io.BufferedReader(

new java.io.InputStreamReader(System.in));

...

 

Но так слишком длинно, поэтому первую строчку и добавили.

 

Далее мы должны завести переменную для буферизованного ввода. Т. е. для вывода мы специальной переменной не заводили, а для ввода должны завести:

...

BufferedReader in=new BufferedReader(new InputStreamReader(System.in));

...

 

Переменная наша называется in.

 

Ну а потом совсем просто - методом readLine мы читаем с клавиатуры, и затем выводим на консоль (экран).