Для чего нужны эти 2 строки кода java?

161
06 июля 2022, 06:50
String a = reader.readLine();
int b = Integer.parseInt(a);
Answer 1

Код должен выглядеть так:

BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String a = reader.readLine();
int b = Integer.parseInt(a);

В строке

String a = reader.readLine();

Создаем переменную String a и присваиваем ей значение, которое возвращает метод readLine(). Этот метод возвращает строку, а присваиванием мы сохраняем эту строку в переменную a. Метод readLine() это метод объекта класса BufferedReader, который назвали reader. (Читайте про его методы по ссылке выше).

Взаимодействие с потоками ввода (В данном случае со стандартным потоком ввода или же взаимодействие с клавиатурой, если проще) реализовано в Java с помощью класса InputStream, объект которого мы получаем методом in класса System.

В строке из комментариев

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

мы создаем объект класса BufferedReader называем его reader (это тоже переменная, кстати) и инициализируем его потоком ввода (System.in) Обратите внимание, что создание и инициализация в коде reader должны быть выше, чем вызов метода reader.readLine().

В этой строке

int b = Integer.parseInt(a);

записываем в переменную bтипа int (целое число) информацию из строки a, предварительно преобразовывая текст, введенный с клавиатуры в целое число с помощью метода parseInt(a) объекта класса Integer.

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

Answer 2

В первой строчке String a = reader.readLine(); объект reader с помощью метода read.Line() считывает данный например из консоли (точнее сказать невозможно, так как нету кода, в котором бы было видно, как вы создали объект reader), считанные данные присваиваются переменной a типа String (строки). Далее (2 строка) с помощью метода parseInt считанная строка преобразуется в число (тип int) и присваивается переменной b. Как вы можете видеть, чтобы преобразовать строку в число, нужно передать строку (то есть переменную а) в метод parseInt.

READ ALSO
Десериализация через GSON

Десериализация через GSON

Допустим, есть такая структура JSON:

143
При Развертывание приложения с помощью докер контенера на удаленном сервере возникает проблема

При Развертывание приложения с помощью докер контенера на удаленном сервере возникает проблема

При развертывании приложения на локальной машине с помошью Docker DEsktop все происходит без проблем и приложение поднимается,но при развертывание...

191
Проблема с удалением переменных классов потомков

Проблема с удалением переменных классов потомков

Прототип кода - Проблема с циклом foreach для коллекции

214