メモの目的
キーボードから値を受け取る際に使用するscanner。
コーディング技術向上のためにネット上の問題を解く際によく使用するので忘れないようメモしておく。
scannerの使い方
▼scannerのインスタンスを生成
Scanner sc = new Scanner(System.in);
▼整数を受け取る
int n = sc.nextInt();
▼文字列を受け取る
String str = sc.nextLine();
▼文字列をスペース区切りで受け取る
String[] arrays = sc.nextLine().split(" ");
▼整数の受け取り後に文字列の受け取りを行う場合
以下のように記述した場合、「整数入力→enter(改行)」の「改行」を受け取ってしまいstrが空白になる。
int n = sc.nextInt(); // nに1を入力
String str = sc.nextLine(); // strの入力待ちにはならず、出力される
System.out.println("nは" + n + "です");
System.out.println("strは" + str + "です");
//出力結果
nは1です
strはです
▼解決方法
int n = sc.nextInt(); // nに1を入力
sc.nextLine(); // ここで空白を読み込んで帳消し
String str = sc.nextLine(); // strに「まめ」を入力
System.out.println("nは" + n + "です");
System.out.println("strは" + str + "です");
//出力結果
nは1です
strはまめです