簡體   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