[英]Ternary operator in a while loop in C#
我对编程很陌生,我想知道如果数字对三元运算符有效,我怎么能打破循环? 我习惯用 if-else 来做,但在这种情况下,我不知道这样做的正确语法或者是否可能。 谢谢!
while (!valid)
{
.....
Console.Write("Enter your phone number : ");
string noTelephone = Console.ReadLine();
string message = ValiderTelephone(noTelephone) ? "Numéro valide" : "Numéro invalide";
}
如果您迫切需要使用三元的东西,我会按照磁控管在评论中指出的方式进行,但实际上,如果您要循环,则安排您拥有的代码/设置消息没有任何意义直到它有效,因为你没有使用你设置的消息! 这意味着当代码到达消息可以用于某事的点时,它肯定是“数字有效”
怎么样:
Console.WriteLine("Enter number:");
string num = Console.ReadLine();
while(!ValidNumber(num)){
Console.WriteLine("Invalid number, try again:");
num = Console.ReadLine();
}
string message = "Number valid";
或更好:
private string Ask(string question){
Console.WriteLine(question);
return Console.ReadLine();
}
...
string num = Ask("Enter number:");
while(!ValidNumber(num))
num = Ask("Invalid number, try again:");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.