スライドショー

【Java入門】キーボードから入力する(InputStreamReader/Scanner)

こんにちは!エンジニアの中沢です。

Javaにはキーボードから文字を入力するための「InputStreamReader」や「Scanner」があります。標準入力を扱うことができるので上手く活用してください。

この記事では、

  • 標準入力とは
  • InputStreamReaderでキーボードから入力する方法
  • Scannerでキーボードから入力する方法
  • nextIntメソッドで数値を入力する方法


などの基本的な内容から、応用的な使い方に関しても解説していきます。

今回はこれらの方法を覚えるために、「InputStreamReader」や「Scanner」の使い方をわかりやすく解説します!

標準入力とは

標準入力とはキーボードから文字を入力することです。標準入力を使えばキーボードから入力した文字を表示させたり、文字によってプログラムの動作を分岐させることなどができます。

キーボードからの入力はプログラムの基本になるので、ぜひ活用してください。

InputStreamReaderでキーボードから入力する方法

ここでは、InputStreamReaderでキーボードから入力した文字を読み取る方法を解説します。

キーボードから入力するには「InputStreamReaderクラス」、「BufferedReaderクラス」、「readLineメソッド」を組み合わせて使います。

次のプログラムで確認してみましょう。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

    public static void main(String[] args) {

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

        System.out.println("キーボードから入力してください");

        String str = null;
        try {
            str = br.readLine();
            br.close();
        } catch (IOException e) {
            e.printStackTrace();
        }

        System.out.println("入力された文字は「" + str + "」です");

    }

}

実行結果:

キーボードから入力してください
Samurai
入力された文字は「Samurai」です

このプログラムでは、「Samurai」と入力しています。このようにして、キーボードから入力した文字を表示することができました。

Scannerでキーボードから入力する方法

ここでは、Scannerでキーボードから入力する方法を解説します。Scannerで入力を受け付け、nextメソッドで入力された文字を読み取ります。

次のプログラムで確認してみましょう。

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {

        System.out.println("キーボードから入力してください");

        Scanner scan = new Scanner(System.in);

        String str = scan.next();

        System.out.println("入力された文字は「" + str + "」です");

    }

}

実行結果:

キーボードから入力してください
Samurai
入力された文字は「Samurai」です

このプログラムでは、「Samurai」と入力しています。このようにして、Scannerでキーボードから入力した文字を表示することができました。

nextIntメソッドで数値を入力する方法

ここでは、nextIntメソッドで数値を入力する方法を解説します。nextメソッドは入力された文字を文字列として読み込みますが、nextIntメソッドは数値として読み込みます。

次のプログラムで確認してみましょう。

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {

        System.out.println("キーボードから入力してください");

        Scanner scan = new Scanner(System.in);

        int num = scan.nextInt();

        System.out.println("入力された文字は「" + num + "」です");

    }

}

実行結果:

キーボードから入力してください
123
入力された文字は「123」です

このプログラムでは、「123」と入力しています。このようにして、数値として読み取り表示することができました。

まとめ

いかがでしたか?

今回は「InputStreamReader」と「Scanner」で、キーボードから入力する方法を解説しました。キーボードから入力した文字をプログラムで使用できるので、ぜひ活用してくださいね。

もし、標準入力の方法を忘れてしまったらこの記事を確認してください!

LINEで送る
Pocket

無料でSEからWebエンジニアへ転職しませんか?



侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、

  • システムエンジニアという職業だけどコードが書けない
  • 事務作業が多くスキルがないため将来が不安
  • スクールに通うと完全未経験者と同じスタートになるからレベルが合わない
という、すでに知識があるSEならではのお悩みがあることに気づきました。そんな方におすすめなのが、弊社の「転職コース 」です。

弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。さらにこちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。

既に知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。

まずは無料体験レッスンを予約する

書いた人

中沢 丈

中沢 丈

フリーランスエンジニア。
システム開発からコンテンツ作成まで幅広く対応します。

連絡先はこちらです。
ntake[email protected]

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説