繁体   English   中英

了解C#中的解析

[英]Understanding Parse in C#

Console.WriteLine("Enter a double number");
string numberInput = Console.ReadLine();


 double number = Double.Parse(numberInput) 

我的问题是代码的最后一行在做什么? 它在做和ToDouble一样的事情吗?

简短的答案是:

将字符串值转换为双精度型。 例如

“ 2.3”(字符串)将变为2.3(双精度)。

您可以选择如何执行此操作:

Double.TryParse()

Convert.ToDouble()

如果您不知道100%输入字符串将是数字值,则Double.TryParse()会很方便。

它将string转换为doubleConsole.ReadLine()方法读取字符串数据并将其存储在名为numberInput string变量中,以将其从字符串转换为doubleDouble.Parse ,我们将其传递给numberInput字符串,会将其转换为两倍。

“将指定样式的数字的字符串表示形式转换为其等效的双精度浮点数。”

参见MSDN

它接受String输入并将其解释为数字输入-在这种情况下为Double StringDouble是完全不同的类型。 首先,可以对Double执行数学运算。

将数字的字符串表示形式转换为等效的双精度浮点数。

MSDN: http : //msdn.microsoft.com/en-us/library/system.double.parse.aspx

它正在调用Double.Parse方法。 根据MSDN页面

将数字的字符串表示形式转换为等效的双精度浮点数。

按照@DoctorMick的 回答 :它与Convert.ToDouble方法具有相同的作用。

在这种情况下,使用它是因为代码从用户那里获得了一个string ,可以将其视为字母序列。 我们希望将其转换为要使用的适当类型,在这种情况下为Double Double为此具有解析方法。

读入变量numberInput的数据是一个字符串。 最后一行将其解析为类型System.Double ,以便更好地将其键入其他操作。

不能保证numberInput包含有效的数值,在这种情况下,Parse方法将引发可捕获的异常。

有7个不同的答案,但每个人似乎都忽略了它与ToDouble一样的问题。 简短的答案是,它仍然在做相同的事情,实际上ToDouble会在内部调用double.Parse。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM