Javaのコンソールでユーザーから単純なキーボード入力(整数)を取得するにはどうすればよいですか? 私はものを使ってこれを達成しましたjava.io.*
が、非推奨であると言われています。
今どうすればいいですか?
Scannerクラスを使用できます
最初にインポート:
import java.util.Scanner;
次に、このように使用します。
Scanner keyboard = new Scanner(System.in);
System.out.println("enter an integer");
int myint = keyboard.nextInt();
補足: を使用nextInt()
している場合、入力の最後の改行文字が読み取られず、目的の動作で実行されないnextLine()
という問題が発生する可能性があります。この前の質問Skipping nextLine using nextIntで解決方法の詳細をお読みください。nextInt()
nextLine()
次のように Scanner クラスを使用できます。
import java.util.Scanner;
public class Main{
public static void main(String args[]){
Scanner scan= new Scanner(System.in);
//For string
String text= scan.nextLine();
System.out.println(text);
//for int
int num= scan.nextInt();
System.out.println(num);
}
}
Scanner を使用して次の行を取得し、入力した行に対して必要なことは何でも行うことができます。JOptionPane を使用して、入力を求めるダイアログをポップアップすることもできます。
スキャナーの例:
Scanner input = new Scanner(System.in);
System.out.print("Enter something > ");
String inputString = input.nextLine();
System.out.print("You entered : ");
System.out.println(inputString);
JOptionPane の例:
String input = JOptionPane.showInputDialog(null,
"Enter some text:");
JOptionPane.showMessageDialog(null,"You entered "+ input);
これらのインポートが必要になります:
import java.util.Scanner;
import javax.swing.JOptionPane;
上記の完全な Java クラス
import java.util.Scanner;
import javax.swing.JOptionPane;
public class GetInputs{
public static void main(String args[]){
//Scanner example
Scanner input = new Scanner(System.in);
System.out.print("Enter something > ");
String inputString = input.nextLine();
System.out.print("You entered : ");
System.out.println(inputString);
//JOptionPane example
String input = JOptionPane.showInputDialog(null,
"Enter some text:");
JOptionPane.showMessageDialog(null,"You entered "+ input);
}
}
Java 6(ところで、持っている必要があります)以上を使用している場合は、次のようにします。
Console console = System.console();
String str = console.readLine("Please enter the xxxx : ");
覚えておいてください:
import java.io.Console;
それでおしまい!
行を追加:
import java.util.Scanner;
Scanner
次に、クラスのオブジェクトを作成します。
Scanner s = new Scanner(System.in);
これで、いつでも呼び出すことができます:
int a = Integer.parseInt(s.nextLine());
integer
これにより、キーボードからの値が保存されます。
import java.util.Scanner; //import the framework
Scanner input = new Scanner(System.in); //opens a scanner, keyboard
System.out.print("Enter a number: "); //prompt the user
int myInt = input.nextInt(); //store the input from the user
ご不明な点がございましたら、お知らせください。かなり自明です。あなたがそれを読むことができるように、私はコードをコメントしました。:)