我的 do-while 语句遇到问题。我创建了一个 do-while 循环来确保唯一接受的输入是“e”或“o”(不区分大小写),但是,即使我插入了所需的输入,它也会继续循环。任何帮助表示赞赏!
1 回答
慕姐8265434
TA贡献1813条经验 获得超2个赞
这句话:while(!side.equalsIgnoreCase("O") || !side.equalsIgnoreCase("E"));
永远正确
如果您输入Eor e,则这!side.equalsIgnoreCase("E")是 false,但这!side.equalsIgnoreCase("O")是 true
如果您输入Oor o,则这!side.equalsIgnoreCase("O")是 false,但这!side.equalsIgnoreCase("E")是 true
由于您正在使用||,true || false给您true所以循环永远不会结束
对于每个其他输入,两者都为 true ( true || true),这也是 true
您需要将其替换为:while(!side.equalsIgnoreCase("O") && !side.equalsIgnoreCase("E"));
添加回答
举报
0/150
提交
取消
