0

使用 读取键盘输入时Scanner(System.in),程序在我输入的最后一行停止,只有在我按下enter输入控制台后它才会继续工作。

例如,如果我想读这个

3
f
g
h

相反,我得到

3
f
g

h

我的程序很简单,

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Scanner sc = new Scanner(System.in);
    int count = sc.nextInt();
    sc.nextLine();
    System.out.println("\n"+count);
    while(count>0) {
        System.out.println(sc.nextLine());
        count--;

    }
}

我无法理解发生了什么。我会感谢你的帮助。

4

1 回答 1

0

我有一段时间没有使用扫描仪了,但我希望这会很有用:

String string;
java.util.Scanner mainScanner = new java.util.Scanner(System.in);
while( mainScanner.hasNextLine() )
{
    string = mainScanner.nextLine();
    // use string
}
于 2013-02-02T20:58:35.923 回答