gpt4 book ai didi

.equals 语句上的 Java 'Skips'

转载 作者:行者123 更新时间:2023-12-01 07:08:33 26 4
gpt4 key购买 nike

我的 java 程序(如下所示的相关部分)似乎卡在 if("".equals) 行上。 while 循环继续继续,尽管 if 语句中的选项最终都没有运行。因此,它不是打印出新数据(在 else 下)或打印出信息(在默认 if 下),而是只是不断要求新输入。

        System.out.println("Type in government type. Enter '?' and click enter for list of gov types.");
while(playerSelection==false);
{
input = fileinput.nextLine();
if("?".equals(input))
{
System.out.println("despotic_monarchy, administrative_monarchy, constitutional_monarchy, despotic_monarchy, enlightened_despotism, feudal_monarchy, revolutionary_empire\n"+
"administrative_republic, beauracratic_despotism, constitutional_republic, republican_dictatorship, merchant_republic, noble_republic, revolutionary_republic\n"+
"papal_government\n"+
"steppe_horde, tribal_democracy, tribal_despotism, tribal_federation");
}
else
{
fileLines[lGov[nationSelected]] = " " + input;
System.out.println(fileLines[lGov[nationSelected]]);
playerSelection=true;
}
}

最佳答案

while 语句后面紧跟一个分号,Java 会将其视为 while 循环的整个主体,从而导致无限循环。那么它永远不会到达它下面的大括号中的 block 。

删除分号,这样您想要的大括号中的 block 实际上将是 while 循环 block 。

关于.equals 语句上的 Java 'Skips',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18518216/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com