サンプル付きですぐわかる!Javaでキーボード入力を読み取る方法

  • このエントリーをはてなブックマークに追加
  • Pocket
javaのキーボード入力

Javaでキーボードから入力された文字や数字を読み取るには、ScannerクラスまたはBufferedReaderクラスを使用する。

このページではScannerクラスについて確認していこう。キーボード入力について知りたい方は参考にしていただければと思う。

Javaでのキーボード入力

キーボード入力のサンプルプログラム

Javaでキーボード入力を読み取るにはScannerクラスを使う。使い方は簡単だ。

説明の前に、先にScannerクラスを使用した簡単なサンプルプログラムを確認してみよう。これだけでなんとなくわかってしまう人も多いはずだ。

まず、Scannerクラスを使用するには、 Scannerクラスを使用することをimport構文でファイルの先頭に書く必要があるので、①で以下のように書く。

import java.util.Scanner;

Scannerクラスを使用するための変数「scanner」を初期化して、Scannerクラスを使う準備を整えるのが②の1文だ。初期化するときの引数に「System.in」と書いているが、これはキーボードからの入力を使うことを指定している。

Scanner scanner = new Scanner(System.in);

③はScannerクラスの「next」メソッドを使っている。nextクラスはキーボードから改行されるまでの文字を取得してくれる。nextメソッドで取得したキーボードから入力された文字をString型の変数に格納しているのが以下だ。

String string = scanner.next();

sampleAクラスを実行して、「あいうえお」と入力して、改行した場合の実行結果は以下のようになる。

複数の入力をしたい場合

先ほどのサンプルプログラムのsampleAクラスは1行入力して終了するプログラムだったが、複数行のキーボード入力の読み取り方法を確認しよう。

以下はampleAクラスを少し変更したプログラムだ。

①のwhile文のループの終了条件に、Scannerクラスの「hasNext」メソッドを使っている。hasNextメソッドは入力の終わりを検出してくれるメソッドだ。つまり、①は入力の終了を検知するまでループして、②のnextメソッドでキーボードの入力を読み取り、③で出力する処理だ。ちなみに入力の終了は、Windowsのコマンドプロンプトの場合は「Ctl+Z」、Macの場合は「Ctl+D」を入力する。

while(scanner.hasNext())

sampleBクラスを実行して、「あいうえお」と入力して改行、「かきくけこ」と入力して改行、そして終了を入力した場合の実行結果は以下のようになる。

まとめ

このページではJavaでのキーボード入力についてまとめてきた。Scannerクラスをインポートすればすぐに使用できるのがお分かりいただけたと思う。

インタラクティブなアプリケーションを作るのは楽しいので、キーボード入力も使い方を覚えておこう。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できる。

短期間でエンジニアになる方法

・「まったくの初心者だけどエンジニアになりたい!」

・「プログラマーとして転職をしたい!」

という方はリナックスアカデミーの資料を見てみてください。短期間で未経験からエンジニアになることができるスクールとして15年間選ばれ続けてきた理由やノウハウが載った資料です。

エンジニアの入り口に立つために必要な勉強技術の最新動向本当に使えるIT資格学習に役立つ国からの奨励金などの情報が詰まっています。

無料で2,3日中にお手元にお届けします。


資料を見てみる

SNSでもご購読できます。

コメントを残す

*