2015-09-22 119 views
2

我想在c#中製作一個非常簡單的公斤轉換器。要做到這一點,我希望讀取用戶的編號,將其乘以2.2,將其存儲爲變量,然後打印結果。 但是,我得到一個錯誤的地方,我說2.2「運算符*'不能應用於類型'字符串'或'雙''」的操作數的時候。我無法真正看到我做錯了什麼。這裏是我的代碼:製作轉換器遇到麻煩

class Program 
{ 
    static void Main(string[] args) 
    { 
     //this application will convert kilograms to pounds 
     string kiloAmount; 
     Console.WriteLine("Type the number of pounds:"); 
     kiloAmount = Console.ReadLine(); 
     Convert.ToDouble(kiloAmount); 
     double poundsAmount = kiloAmount * 2.2; 
     Console.WriteLine(kiloAmount); 
     Console.ReadKey(); 
    } 
} 
+0

對不起,剛纔意識到應該說數公斤,而不是磅。 – Pixeleos

+2

如果你想改變或提供更多信息等,你可以[編輯]你的問題。 –

回答

1

基洛量不被任何指定爲雙:

double newKiloAmount = Convert.ToDouble(kiloAmount); 
4

Convert.ToDouble回報值轉換爲double。它不能轉換參數(出於各種原因 - 隨着時間的推移你會遇到這些)。您正試圖乘以原始值,這是一個string,而不是一個數字。

相反,這樣做:

var poundsString = Console.ReadLine(); 
var pounds = Convert.ToDouble(poundsString); 

var kilos = pounds * 2.2; 

而且,它可能是一個更好的主意,用double.TryParse,這樣就可以從容地處理無效的輸入。