0

コンソールから整数を読み取る次の簡単なプログラムを作成しました。

import java.util.Scanner;

public class InputCheck {

    public static void main(String[] args) {
        int n;
        Scanner in = new Scanner(System.in);

        System.out.println("Enter value of n:");
        n = in.nextInt();

        System.out.println("Value of n is: " + n);
    }
}

しかし、最初の入力のみが考慮されているにもかかわらず、スキャナがそれを読み取るために 2 つの入力を入力する必要があります。これはコンソールの出力です:

Enter value of n:
5
1
Value of n is: 5

同様の質問をたくさん見てきましたが、この特定の問題に対処したものはありませんでした。

nextLine() を実行してから parseInt を実行できることはわかっていますが、ここで何が間違っているのかを本当に知りたいです。

前もって感謝します。

編集:コードについて多くの質問が寄せられています。それが正確なコードです。また、Eclipse Juno と Kepler でも同じ動作を観察したことを確認できます。ここをチェックしてください:i44.tinypic.com/2h83e52.png

また、Eclipse の外部でプログラムをコンパイルして実行しても、同じ動作が観察されます。Java バージョン 1.6.0 を使用しています。これはそれに関係しているのでしょうか?

4

1 に答える 1