Java字符串输入错误

时间:2012-11-29 01:54:00

标签: java string loops java.util.scanner

所以这个问题有点简单,但我想知道为什么以下代码在第一次运行完美后,直接跳到“输入页码:”,而不是要求标题第二个循环。我已经读过某些地方,Java有些东西不允许重复使用扫描仪。这是我面临的问题吗?我尝试使用kbReader.next()并且可以使用,但代码仅适用于没有空格的字符串。

String title = "";
int page = 0;
int i = 0;
Scanner kbReader = new Scanner(System.in);

for (i=1;i<=3;i++){
        System.out.print("Enter the title: ");
        title = kbReader.nextLine();
        System.out.print("Enter the page number: ");
        page = kbReader.nextInt();

        System.out.print(title);
        System.out.println(page);
    }

非常感谢!

1 个答案:

答案 0 :(得分:3)

您应该在kbReader.nextLine();之后添加kbReader.nextInt();。在第二个循环中,kbReader.nextInt();只是读取流中的行尾,由kbReader.nextInt();遗漏。