我尝试将字符串转换为浮点数,因为我使用Console.ReadLine()
输入。
Console.ReadLine()
唯一接受字符串值,但我需要转换。我怎么能这样做?
谢谢你。
我尝试将字符串转换为浮点数,因为我使用Console.ReadLine()
输入。
Console.ReadLine()
唯一接受字符串值,但我需要转换。我怎么能这样做?
谢谢你。
float val = float.Parse(Console.ReadLine());
Console.WriteLine(val);
或者
float val2;
if (!float.TryParse(Console.ReadLine(), out val2))
{
Console.WriteLine("Not a valid float");
}
else {
Console.WriteLine(val2);
}
用于Convert.ToDouble()
转换输入的字符串值
double input = Convert.ToDouble(Console.ReadLine())
你可以做的是使用 float.TryParse。它应该看起来像这样。
float fl;
float.TryParse(Console.ReadLine(), out fl);
虽然这应该可行,但您也可以在 if 语句中使用 tryparse,以便在它不解析时发出警报。像这样:
float fl;
if(!float.TryParse(Console.ReadLine(), out fl)){
Console.WriteLine("It didn't parse");
}
这应该可以解决您的问题。
我建议double.TryParse
在do..while
循环中使用,以便不断询问,直到输入正确的值:
double input = 0.0;
do {
Console.WriteLine("Please enter floating point value");
}
while (!double.TryParse(Console.ReadLine(), out input))