C# c!=操作员工作不正常
我不知道是不是因为我太厚,但我有一些验证代码来检查答案是还是不是 我似乎无法让它工作我已经在我的程序的其他地方使用了代码,它工作了,但如果有错误,我无法发现错误。不管输入字符是什么,代码都会在while中运行C# c!=操作员工作不正常,c#,validation,operators,C#,Validation,Operators,我不知道是不是因为我太厚,但我有一些验证代码来检查答案是还是不是 我似乎无法让它工作我已经在我的程序的其他地方使用了代码,它工作了,但如果有错误,我无法发现错误。不管输入字符是什么,代码都会在while中运行 string correctDestenation = Console.ReadLine().ToLower(); while (correctDestenation != "y" || correctDestenation != "n") { Console.WriteLine(
string correctDestenation = Console.ReadLine().ToLower();
while (correctDestenation != "y" || correctDestenation != "n")
{
Console.WriteLine(
"Oops! You must enter a 'y' for yes and a 'n' for no");
correctDestenation = Console.ReadLine().ToLower();
}
你的逻辑不正确。您希望使用&&而不是| |
while (correctDestenation != "y" && correctDestenation != "n")
或者,你可以用另一种方式来看待它,这相当于:
while (!(correctDestenation == "y" || correctDestenation == "n"))
该条件将始终得到满足,因为字符不等于“y”或“n”。使用&&而不是| |。使用AND运算符怎么样
while (correctDestenation != "y" && correctDestenation != "n")
while (correctDestenation != "y" && correctDestenation != "n")
{
Console.WriteLine("Oops! You must enter a 'y' for yes and a 'n' for no");
correctDestenation = Console.ReadLine().ToLower();
}
它不应该是| |你必须使用&&在怀疑运算符之前,怀疑你自己的逻辑和代码。我认为断言不等式运算符!=不起作用。