我正在编写一个程序,其中包含一种在歌曲数组中搜索歌曲的方法。下面是这个给我带来麻烦的特定部分的代码。kybd
已经启动,下面是该部分的代码,使用我的类中的方法searchSong()
。
System.out.println("To search for a song, enter the following:");
System.out.print("Title: ");
searchT = kybd.nextLine();
System.out.print("Author: ");
searchAu = kybd.nextLine();
System.out.print("Interpreter: ");
searchI = kybd.nextLine();
System.out.print("Album: ");
searchAl = kybd.nextLine();
System.out.println("Found this:"+'\n'+lib.searchSong(searchT, searchAl, searchAu, searchI));
当我运行程序时,它会打印“标题”,但不允许我输入搜索词,它只是直接跳到“作者”。下面是我得到的输出。
要搜索歌曲,请输入以下内容:
标题:作者:搜索
翻译: 搜索
专辑: 搜索
有人可以向我解释为什么会发生这种情况,也许如何解决它?我已经检查并仔细检查了我的代码,但我无法弄清楚。
解决了!我nextInt()
之前在程序中使用了另一种方法。我接受了@Rohit Jain 建议的问题中的建议,并nextLine()
在这部分代码之前使用了一个空白,现在它可以工作了。谢谢!