【发布时间】:2020-03-29 19:22:35
【问题描述】:
我正在制作票务系统。如果用户正在搜索票,他们会输入名称。当我要求用户输入时它不起作用。
如果我这样调用方法:G1.displayTicket("John Blogs", LottoTickets); 它确实有效!
显示某张票:
System.out.print("\nDo you wish to search for a particular ticket? ");
String certainTicketQ = in.next();
if(certainTicketQ.equalsIgnoreCase("Yes"))
{
System.out.print("Name of the person you wish to search for: ");
String name = in.next();
G1.displayTicket(name, LottoTickets);
}
方法是:
public void displayTicket(String name,Ticket[] LottoTickets)
{
for(int i = 0; i<LottoTickets.length;i++)
{
if(name.equalsIgnoreCase(LottoTickets[i].getName())){
System.out.println(LottoTickets[i]);
break; //Breaks out of loop once ticket is found
}else break;
}
}
【问题讨论】:
-
查看创建和发布有效的minimal reproducible example 并提出您的问题。请阅读链接以了解这意味着什么。此外,您还需要学习和学习 Java 命名约定。方法和变量都应该以小写字母开头,类以大写字母开头。遵循这些约定将使您的代码更容易被其他人(我们!)和您未来的自己阅读和理解。
-
使用
in.nextLine()而不是in.next()。 -
是的,我都尝试过 in.nextLine() 而不是 in.next()。 @ArvindKumarAvinash
-
@SeanMcavoy - 我已经发布了答案。如有任何疑问/问题,请告诉我。
-
@ArvindKumarAvinash 是的,谢谢你现在试过了,效果很好。