扫描仪类正在跳过线条

时间:2013-06-27 22:17:29

标签: java

我是编程的新手,我的扫描仪类有问题。这个代码处于一个循环中,当循环绕过第二个,第三个时,无论我将它设置为什么,它都会跳过第一个标题输入。 我需要帮助,为什么它在开始时跳过我的标题扫描仪输入?

System.out.println("Title:");

list[i].title=keyboard.nextLine();

System.out.println("Author:");

list[i].author=keyboard.nextLine();

System.out.println("Album:");

list[i].album=keyboard.nextLine();

System.out.println("Filename:");

list[i].filename=keyboard.nextLine();

1 个答案:

答案 0 :(得分:1)

在您未向我们展示的代码中,可能存在对Scanner输入方法之一的调用,该方法不使用换行方法。例如nextLine。在这种情况下,换行符将从循环结束传递到后续nextLine语句。现在这不会阻止收到输入。解决方案是确保在每次迭代结束时消耗换行符

// list[i].id = keyboard.nextInt();
list[i].id = Integer.parseInt(keyboard.nextLine());