C# 如何正确使用if语句?
由于C# 如何正确使用if语句?,c#,C#,由于if语句中的第1行,我无法运行此命令。我肯定有些东西需要转换,但我不确定是什么 我的代码: 尝试if(Int32.Parse(userInput)>100) 您试图将Console.ReadLine()返回的字符串与整数进行比较,这就是编译器抄袭的原因 虽然这是一种更稳健的方法。。现在,我想这将是使用 仅当转换/解析操作成功时,bResult才会为true。这将处理恶意输入。如果成功,out参数将包含所需的整数值。userInput是一个字符串,您试图将其与int(100)进行比较。首先需要
if
语句中的第1行,我无法运行此命令。我肯定有些东西需要转换,但我不确定是什么
我的代码:
尝试if(Int32.Parse(userInput)>100)
您试图将Console.ReadLine()返回的字符串与整数进行比较,这就是编译器抄袭的原因 虽然这是一种更稳健的方法。。现在,我想这将是使用
仅当转换/解析操作成功时,bResult才会为true。这将处理恶意输入。如果成功,out参数将包含所需的整数值。userInput是一个字符串,您试图将其与int(100)进行比较。首先需要将用户输入转换为int
int i;
// TryParse() returns true/false depending on whether userInput is an int
if (int.TryParse(userInput, out i))
{
if (i > 100)
{
Console.WriteLine("I hate myself");
}
else
{
Console.WriteLine("I love myself");
}
}
else
{
Console.WriteLine("Input was not a valid number.");
}
如果你不是被迫使用静态类型的语言,比如c#作为一个类或其他东西,我是否可以建议你开始使用Ruby或Python等语言进行编程,以简化从Engrish的转换?我认为从静态类型开始是健康的。这意味着编译器可以帮助您。动态类型很好,但也有它自己更微妙的缺陷(例如,在您可能没有测试的情况下运行时失败)
int parsedInt;
bool bResult = Int32.TryParse(stringToParse, out parsedInt)
int i;
// TryParse() returns true/false depending on whether userInput is an int
if (int.TryParse(userInput, out i))
{
if (i > 100)
{
Console.WriteLine("I hate myself");
}
else
{
Console.WriteLine("I love myself");
}
}
else
{
Console.WriteLine("Input was not a valid number.");
}