Урок 3

Консольный ввод/вывод


1. Потоки ввода вывода

  • Стандартный поток вывода (дисплей) в Java представлен объектом System.out
  • Стандартный поток ввода (клавиатура) в Java представлен объектом System.in.

Пример 1. Чтение символов из потока System.in

public class SystemInDemo {
    public static void main(String[] args) {
        int x;
        try {
            x = System.in.read();
            char c = (char) x;
            System.out.println("Код символа: " + c + " = " + x);
        } catch (java.io.IOException e) {
            System.err.println("ошибка ввода " + e);
        }
    }
}

2. Класс Scanner

Класс Scanner используется для ввода данных. Этот класс находится в пакете java.util, поэтому его надо импортировать:
import java.util.Scanner;

Методы класса Scanner

  1. hasNextInt() - возвращает true если с потока ввода можно считать целое число.

  2.  

    nextInt() - считывает целое число с потока ввода.

  3.  

    hasNextDouble() - проверяет, можно ли считать с потока ввода вещественное число типа double.

  4.  

    nextDouble()  - считывает вещественное число с потока ввода.

  5.  

    nextLine() - позволяет считывать целую последовательность символов, т.е. строку.

  6.  

    hasNext() - проверяет остались ли в потоке ввода какие-то символы.

Пример 2. Чтение символов из потока System.in с помощью Scanner

import java.util.Scanner;

public class ScannerDemo1 {
    public static void main(String[] args) {
        // создаём объект класса Scanner
        Scanner sc = new Scanner(System.in);
        System.out.print("Введите целое число: ");
        // возвращает истину если с потока ввода можно считать целое число
        if (sc.hasNextInt()) {
            // считывает целое число с потока ввода и сохраняем в переменную
            int i = sc.nextInt();
            System.out.println(i * 2);
        } else {
            System.out.println("Вы ввели не целое число");
        }
    }
}

Пример 3. Чтение символов из потока System.in с помощью Scanner

import java.util.Scanner;

public class ScannerDemo2 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        // если ввести букву s,
        // то случится ошибка во время исполнения
        double i = sc.nextDouble();
        System.out.println(i / 3);
    }
}

Пример 4. Чтение символов из потока System.in с помощью Scanner

import java.util.Scanner;

public class ScannerDemo3 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String s1, s2;
        s1 = scanner.nextLine();
        s2 = scanner.nextLine();
        System.out.println(s1 + s2);
    }
}

 

Источники:

http://kostin.ws/java/java-input-stream.html



0 comments
Leave your comment: