Акцентируйте внимание на комментарии в коде, правильно ли я уяснил мысль отталкиваясь от аналогии! и если нет, то поправьте, мне так проще усваивается информация!
package com.javarush.task.task03.task0319;
import java.io.*;
import java.io.InputStream;
import java.io.Reader;
import java.io.BufferedReader;
/*
Предсказание на будущее
*/
public class Solution {
public static void main(String[] args) throws Exception {
InputStream vvod = System.in;
/*Базовый класс InputStream представляет классы, которые получают данные из различных источников:
массив байтов,строка (String), файл и т.д. Что бы было понятнее я назвал этот класс ВВОД, т.е он считает то что мы должны ввести (Коля,3000,5)
когда Класс InputStrea (vvod) считает информацию за счет (System.in) он поместит ее в память компьюетера, проще говоря, он положит (Колю,3000,5) в коробку,
из которой мы в скором времени их достанем*/
Reader readVvod = new InputStreamReader(vvod);
/*используя класс (Read) который мы вызвали с библиотеки, мы создаем объект (readVvod) который будет считывать информацию с объекта (vvod) иными словами,
объект (readVvod) получает коробку и смотрит что там, а там (Коля,3000,5) это та саммую коробка которую объект (vvod) создал*/
BufferedReader soderjimoeKorobki = new BufferedReader(readVvod);
/*BufferedRader мы вызвали с библиотеки JAVA. для того что бы считывать данные которые у нас хранятся в Буфере, если учитывть, тот факт что (Коля,3000 и 5),
мы не вводим с клавиатуры, а они уже присутвуьт в компеляторе сайта JavaRash на которм мырешаем задачи, то что бы считать эти данные (Коля,3000,5) мы используем
(BufferedRader) который в своей задаче я назвал (soderjimoeKorobki) для наглядного примера.*/
String name = soderjimoeKorobki.readLine(); // считываем строку имя (Коля типа, String)
String aMoney = soderjimoeKorobki.readLine(); // считываем строку деньги (3000, типа String) ВНИМАНИЕ! (3000) в данной строке являеться не числом, а строкой, поэтому тип String.
String bAge = soderjimoeKorobki.readLine(); // считываем строку время (5 лет, типа String)
int cMoney = Integer.parseInt(aMoney); // создаем новую переменную типа int (dAge) преобразовать в ней тип String в тип Int, иными словами: (три тысячи) переводим в 3000, строку в число
int dAge = Integer.parseInt(bAge); // аналогично, преобразуем строчку (5) в число (5) используя (Integer.parseInt)
System.out.println(name+" получает "+cMoney+" через "+dAge+" лет.");
}
}