嘿伙计们,我正在编写这个程序,但我对这种方法有疑问。
public int titlesearch()
{
System.out.println("What is the title of the game you want to search for?");
String searchkey;
searchkey =input.nextLine();
String titlekey=searchkey.toLowerCase();
for (int i=0;i<gamelist.size();i++)
{
String gametitle=gamelist.get(i).getTitle();
if (gametitle.equals(titlekey) && gamelist.get(i).getSelling()== true)
{
System.out.println("Game is found!");
return i;
}
}
return -1;
}
基本上,我遇到的问题是它第一次运行时,它跳过了用户输入,它返回-1,完全跳过了 searchkey=input.nextLine()。但是,如果我第二次调用它,它就会起作用。方法有什么问题?
Scanner input=new Scanner(System.in);
List<gameprofile> gamelist= new Arraylist<>();
这些是上述方法的声明。顺便说一句,我已经检查过了,整个程序都在运行,但这是我唯一遇到的问题。