繁体   English   中英

扫描仪类正在跳过线条

[英]Scanner class is skipping lines

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

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();

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM