icon
icon

Scannerクラスの使い方!Javaで標準入力を取得する方法【初心者向け】

初心者向けにJavaで標準入力を取得する方法について解説しています。標準入力の取得にはScannerクラスを使います。取得の手順を実際にサンプルコードを書いて説明しているので、ぜひ参考にしてみてください。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

標準入力を取得するためには、Scannerクラスを使用します。

取得した標準入力の情報を使って処理を行いたい場合や、対話型のプログラムで利用します。

実際にプログラムを書いて説明しているので、ぜひ理解しておきましょう。

 

そもそもJavaについてよく分からないという方は、Javaとは何なのか解説した記事を読むとさらに理解が深まります。
 

なお本記事は、TechAcademyのオンラインブートキャンプJava講座の内容をもとに作成しています。

 

田島悠介

今回は、Javaに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

標準入力を取得する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

Scannerの書き方

標準入力の取得は下記の手順で行います。

1.java.util.Scannerをインポートする。

2.Scannerクラスのインスタンスを作成。コンストラクタの引数にSystem.inを指定する。
System.in は、InputStream のオブジェクトで、標準入力(通常はキーボードからの入力)を示しています。

3.nextLine( )またはnext( )メソッドを使って、Scannerクラスのインスタンスから入力内容を取得。
nextLine( )メソッドは空白(スペース)を含む文字列を取得することができます。
一方next( )メソッドは空白までの文字列を取得します。

例えば、標準入力で”雨 水”という一行を入力した場合、nextLine( )メソッドを使うと”雨 水”が取得されますが、next( )メソッドの場合は一回の取得で得られるのは”雨”のみですので、全ての内容を取得したい場合はnext( )メソッドを繰り返し動作させる必要があります。

 

実際に書いてみよう

ソースコード

import java.util.Scanner;

public class Sample {

  public static void main(String[] args) {

    // Scannerクラスのインスタンスを作成
    // 引数で標準入力System.inを指定する
    Scanner scanner = new Scanner(System.in);

    // 入力を促すメッセージ
    System.out.print("入力してください > ");

    //入力された内容をインスタンスから取得
    String input_text = scanner.nextLine();

    //入力された内容を画面に表示
    System.out.println(input_text + "が入力されました");

    // Scannerクラスのインスタンスをクローズ
    scanner.close();

  }

}

実行すると、コンソールに”入力してください > “が表示されるので、続けて内容を入力しエンタキーを押します。

すると、入力した内容が表示されます。

実行結果

入力してください > おはよう
おはようが入力されました

 

[PR] Javaプログラミングで挫折しない学習方法を動画で公開中

監修してくれたメンター

長屋雅美

独立系SIerで7年勤務後、現在はフリーのエンジニアとして自宅をオフィスとして活動しています。
JavaやC#、shellscriptを用いた開発を主に担当し、TechAcademyではJavaコースを担当しています。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

TechAcademyでは、初心者でもJavaやServletの技術を使ってWebアプリケーション開発を習得できるオンラインブートキャンプJava講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。

初心者・未経験でもできる。まずはテックアカデミーに相談しよう

プログラミングを独学で学習していて、このように感じた経験はないでしょうか?

  • ・調べてもほしい情報が見つからない
  • ・独学のスキルが実際の業務で通用するのか不安
  • ・目標への学習プランがわからず、迷子になりそう

テックアカデミーでは、このような 学習に不安を抱えている方へ、マンツーマンで相談できる機会を無料で提供 しています。
30分間、オンラインでどんなことでも質問し放題です。

「受けてよかった」と感じていただけるよう カウンセラーやエンジニア・デザイナー があなたの相談に真摯に向き合います。

「自分に合っているか診断してほしい」
「漠然としているが話を聞いてみたい」

こんなささいな悩みでも大丈夫です。

無理な勧誘は一切ありません ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)

今なら参加者限定の割引特典付き! 無料相談を予約する