次に Scanner クラス (※) を使ってコンソールからキーボードで文字列や数字を入力する方法について学びます。
※ 「クラス」とは何かについてはこちらで説明します
早速ですが次のソース 1 を実行し、キーボードから何か文字を打ってみて下さい。
import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.print( "文字列: "); String str = scan.next(); System.out.println( str ); } }
ここで1 行目の import 〜 は C 言語の include の様なもので、Scanner クラスを使用することを示しています。
5行目の「Scanner scan = new Scanner(System.in);」がキーボード入力するための準備で(正確に言うと Scanner クラスのインスタンス scan を作成しています)、その後 scan.next() によって文字列をキーボードから入力して文字型変数 str に代入することが出来ます。
また int 型と double 型の数値入力をしたい場合は次のように scan.nextInt() と scan.nextDouble() を使います。
import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.print( "整数: "); int d = scan.nextInt(); System.out.println( d ); System.out.print( "実数: "); double c = scan.nextDouble(); System.out.println( c ); } }
なお数字以外の文字列を入力するとエラーが出てプログラムが終了します。
また Java のバージョンによっては scan を使い終わったら scan.close() で scan を閉じないと警告が出るみたいです。