我是 C# 的新手,我已经开始学习它以扩大我可以使用的编程语言,但我遇到了一个小问题,我在 C 和 Java 中都没有遇到过。
我试图从键盘获得用户响应,然后将其与可能的情况进行比较,如果这些情况都不匹配,那么我希望用户必须重复该过程,直到他输入了正确的值。
String input = Console.ReadLine();
while ((input[0] != 'N') || (input[0] != 'Y'))
input = Console.ReadLine();
if (input[0] == 'N')
{
Console.WriteLine("NO");
Console.ReadKey();
}
else if (input[0] == 'Y')
{
Console.WriteLine("YES");
Console.ReadKey();
}
到目前为止,这不是我尝试过的最有效的方法,我也尝试过做一个 do while 循环和许多其他变体。
我遇到的问题是,当没有激活while循环时,一切正常,但是当我添加它时,即使输入是N或Y,它也总是进入循环并且永远不会离开循环,即使很明显这是错误的。
请如果有人能给我一些关于为什么会发生这种情况的见解,或者如果有人可以提出更好的方法来做到这一点,我们将不胜感激。谢谢你。
卡里姆