2013-06-30 34 views

回答

0

double.Parse預計string作爲參數,你想與另一個double值來調用它。

我真的不知道爲什麼你正在使用double.Parse這裏,但要使其工作增加ToString()電話:

double socialSecurityFee = 0; 
double xsocialSecurityFee = double.Parse(socialSecurityFee.ToString()); 

或只是分配本身的價值(因爲它已經是一個double,是不是它?):

double socialSecurityFee = 0; 
double xsocialSecurityFee = socialSecurityFee ; 
4

我的代碼有什麼問題?

正是編譯器告訴你 - 沒有任何double.Parse重載的適合double類型的一個參數。它甚至不清楚你的意思 - 解析通常是從一種類型(通常是字符串)轉換爲另一種類型(在這種情況下爲double)。你的初始值是已經 a double,那麼你期望它做什麼?

我的猜測是,你實際上有一個字符串的地方,你試圖解析 - 所以你需要改變你的參數,以便它使用該字符串,而不是socialSecurityFee變量。目前尚不清楚您是否需要兩個double類型的變量。

此外,如果這是爲了表示貨幣數量(聽起來像),您應該考慮使用decimal而不是double

+0

string socialSecurityFee = 0; double xsocialSecurityFee = double.Parse(socialSecurityFee);如果我改變這種方式,我得到另一個錯誤:錯誤CS1503:參數'#1'不能轉換'雙'表達式鍵入'字符串'(CS1503) – ltantonov

+4

@ user2536652:那麼現在你已經改變了變量的類型,但你試圖將值'0'賦值給一個字符串,這不起作用... –

0

Double.Parse有四種過載。其中只有一個接受單個參數。該參數的類型是string,但您試圖通過double。那就是究竟是編譯器錯誤信息告訴你什麼。你不能這樣做,因爲double s不能隱式轉換爲string。您不能使用不隱式轉換爲方法所需類型的參數來調用方法。

但是你想要做什麼? socialSecurityFeedouble,那你爲什麼試圖解析呢?解析意味着分析string以賦予其含義。

+0

我沒有想到在這麼短的時間內有如此多的響應。現在它工作正常,謝謝;) – ltantonov

0

方法double.Parse()需要一個string參數,並且您傳遞一個double值。

由於您的原始值已經是一個雙,你甚至不需要使用double.Parse()

0

socialSecurityFee已經是一倍。 double.Parse需要一個字符串,強硬。你不需要在這裏解析任何東西。你想做什麼?

相關問題