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(); } }
実行すると、コンソールに”入力してください > “が表示されるので、続けて内容を入力しエンタキーを押します。
すると、入力した内容が表示されます。
実行結果
入力してください > おはよう おはようが入力されました
監修してくれたメンター
長屋雅美
独立系SIerで7年勤務後、現在はフリーのエンジニアとして自宅をオフィスとして活動しています。 |
内容分かりやすくて良かったです!
ゆかりちゃんも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でもJavaやServletの技術を使ってWebアプリケーション開発を習得できるオンラインブートキャンプJava講座を開催しています。
挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。