Java Урок 4: Ввод чисел с клавиатуры, System.in

Для получения консольного ввода в классе System определен объект System.in. Однако, непосредственно через объект System.in не очень удобно работать, поэтому, как правило, используют класс Scanner, который, в свою очередь использует System.in (Так сложилось).

Скачать исходники для статьи можно ниже

Итак, для ввода информации с консоли надо сделать:
1. предварительно импортировать класс Scanner

import java.util.Scanner;

2. создать объект класс Scanner. При создании объекта класса Scanner используется объект in класса System

Scanner sc = new Scanner(System.in); 

Если здесь не все понятно не огорчайтесь, все станет намного яснее позже, пока просто запомните

Scanner sc = new Scanner(System.in);

3. Переменной а, типа int присваивается значение. Значение получают при помощи метода nextInt(), который прописан в классе Scanner

int a = sc.nextInt();

Пока просто запомните

int a = sc.nextInt();

4. Необходимо закрыть объект sc

sc.close();

Таким образом, общий код программы выглядит так:

import java.util.Scanner;
public class Test { // объявляется класс Test
   public static void main(String[] args) {// так включаются программы,
                                           // просто запомнить
      Scanner sc = new Scanner(System.in);
      System.out.println("Введите число:");
      int a = sc.nextInt();
      sc.close();
      System.out.println("Введено число:" + a);

   }
}

Чтобы получить введенное число, используется метод sc.nextInt(), который возвращает введенное с клавиатуры целочисленное значение.

В классе Scanner имеются еще ряд методов, которые позволяют получать не только целочисленные значения для int переменных. Есть методы, которые позволяют получать значения для других типов переменных. Некоторые из них представлены ниже:

sc.next(); считывает введенную строку до первого пробела;
sc.nextLine(); считывает всю введенную строку;
sc.nextDouble(); считывает введенное число дробного типа.

Введите свой email адрес для того, чтобы подписаться на мой блог:


knopkisoc

Java Урок 4: Ввод чисел с клавиатуры, System.in: 4 комментария

  1. Альберт

    Если я ввожу через double и ввожу например 3.3 то мне выдаёт ошибку

    3.3
    Exception in thread “main” java.util.InputMismatchException
    at java.util.Scanner.throwFor(Scanner.java:864)
    at java.util.Scanner.next(Scanner.java:1485)
    at java.util.Scanner.nextDouble(Scanner.java:2413)
    at One.project.Shelq.Main.main(Main.java:9)

  2. bunny

    //переменную double вводить с точкой, например: 2.5

    import java.io.*;

    public class Solution {
    public static void main(String[] args) throws Exception {
    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

    double t = Double.parseDouble(reader.readLine());

    if (t > 0 & t 3 & t 4 & t <= 5) {
    System.out.println("красный");
    }
    }
    }

Добавить комментарий