【发布时间】:2017-11-22 06:55:22
【问题描述】:
我在使用 c# 中的类型时遇到问题。我在控制台应用程序上有一个 int 输入,我希望将一个(非数字字符)字符串输入放回我现有的但未图示的 do while 循环中,就像一个错误一样。我不想将非数字字符串值转换为 int,而是想保护我的对象不崩溃,并在出现不可接受的值(即字母字符串值)时将其返回到循环的开头。例如:
Console.WriteLine("Please input an odd number:");
int input1 = int.Parse(Console.ReadLine());
if (input1 % 2 == 0)
{
Console.WriteLine("Please input an odd number.");
//is even
}
else
{
TotalOdd = TotalOdd + input1;
TotalNumeral++;
Console.WriteLine("Accepted.");
//is odd
}
我希望将字符串输入视为“偶数”数。我知道这似乎是一个业余错误,但实际上我不知所措......感谢任何帮助。
【问题讨论】:
-
我不知道你的问题是否正确。但是您可以将字符串转换为整数。转换.ToInt32()。由于用户能够提供任何输入,因此您可以先检查它是否为整数。 int.TryParse(input1, out value)
-
您是在询问用户是否输入了偶数,您将如何返回并要求更多输入,直到他们输入奇数?
-
我不确定您是否完全掌握字符串“是”的含义——所有输入都是字符串,直到您执行 int.parse 为止——但无论如何,也许您应该查看 int.tryparse。对不起,如果我在这里无可救药地错过了你的观点。
-
使用
TryParse。
标签: c#