else if(input==5){
String artist = "Bob";
System.out.print("Artist: ");
artist = keyboard.nextLine();
Playlist artistList = defaultPlaylist.getSongsByArtist(artist);
artistList.printAllSongs();
}
当我运行它时,它会完全跳过[artist = keyboard.nextLine();]
键盘是扫描仪对象的一个实例。
编辑---------------------------------------------- -------------------------------------------------- ---------------------------- 通过“跳过”我的意思是完全忽略。我运行它时不会要求用户输入。
答案 0 :(得分:2)
很可能语句是从不消耗这些字符的方法传递换行符,例如nextInt
。因此,nextLine
语句不会阻止输入。尝试在此声明之前使用这些字符
keyboard.nextLine(); // add this
artist = keyboard.nextLine();
如果有多个if
语句块,那么最好在nextLine
语句之前添加新的if
语句(以避免多个newLine
语句)
int input = keyboard.nextInt();
keyboard.nextLine();