Javaで標準入力を取得する方法を紹介します。
リンク
標準入力とは
コンピュータ上で実行されているプログラムが、特に何も指定されていない場合に標準的に利用するデータ入力元。
ここでは、プログラム実行時、キーボード入力内容を取得することです。
こちらもあわせて読みたい記事:java 標準出力をする方法
方法
Javaには、事前に用意してくれているたくさん命令文があります。
標準入力する命令文は以下の通りです。
String msg = new java.util.Scanner(System.in).nextLine();
これで、キーボード入力した内容が変数msgに代入されます。
ちなみに、他の型(int型、double型など)を取得したい場合は
byte var = new java.util.Scanner(System.in).nextByte(); //byte型取得
short var = new java.util.Scanner(System.in).nextShort(); //short型取得
int var = new java.util.Scanner(System.in).nextInt(); //int型取得
long var = new java.util.Scanner(System.in).nextLong(); //long型取得
float var = new java.util.Scanner(System.in).nextFloat(); //float型取得
double var = new java.util.Scanner(System.in).nextDouble(); //double型取得
boolean var = new java.util.Scanner(System.in).nextBoolean(); //boolean型取得
char var = new java.util.Scanner(System.in).next().charAt(0); //char型取得
String var = new java.util.Scanner(System.in).nextLine(); //string型取得
また、想定した型と違う型を入力すると…
Exception in thread "main" java.util.InputMismatchException:
というエラーが出ます。
サンプルコード(BMI計算)
体重(kg)と身長(m)を入力させて、BMIを計算するプログラムを作ってみます。
class BMI{
public static void main(String[] args){
double bmi;
System.out.print("Input your weight(kg).");
double weight = new java.util.Scanner(System.in).nextDouble();
System.out.print("Input your height(m).");
double height = new java.util.Scanner(System.in).nextDouble();
bmi = weight / Math.pow(height,2);
System.out.println("Your BMI is "+ bmi);
}
}
以上、Javaで標準入力する方法でした。