0

この単純なプログラムを作成しようとしているときに、文字列に関してユーザー入力を取得するのに苦労しています。整数を入力するときは問題ありませんが、プログラムがユーザーに別の文字を入力するように要求すると、カーサーが点滅して何かを入力するのを待ちますが、それはできません。整数をすべてコメントアウトすると、文字列を入力できるようになります。両方を入力できない理由はありますか? ありがとうございました

java.util.Scanner をインポートします。

public class math {
public static void main(String args[]){
    int int1,int2,int3;
    String operator;
    Scanner ahmad=new Scanner(System.in);
    System.out.print("Enter three integers: ");
    int1=ahmad.nextInt();
    int2=ahmad.nextInt();
    int3=ahmad.nextInt();
    System.out.print("Enter a (for average), s (for sum) or p (for product):");
    operator=ahmad.nextLine();
    System.out.println("Thank you");



}

}

4

1 に答える 1

3

nextInt()整数のみを消費し、空白文字 (この場合は EOL) は消費しません。twonextLine()を使用します。1 つは EOL 文字を消費するため、もう 1 つは入力を求めるプロンプトを出すためです。

System.out.print("Enter a (for average), s (for sum) or p (for product):");
operator=ahmad.nextLine();
operator=ahmad.nextLine();

System.out.println("Thank you");
于 2013-10-10T01:26:50.087 に答える