2016-09-07 9 views
1

I hava 2 Doppel-Variablen, und wenn ich sie summiere gibt es mich int Variable. aber ich will es doppelt zurückgeben. Was soll ich tun? Vielen Dank!Wie Doppel von Doppel plus Doppel zurückgeben?

Beispiel:

double d = 4.0; 
double Myd = 4.0; 

Console.WriteLine (d+Myd); // it returns me 8 but I want 8.0 . 
+0

Es ist immer noch ein Doppel. Wenn Sie 'Console.WriteLine()' 'machen, bin ich mir ziemlich sicher, dass das parameterlose' ToString() 'standardmäßig aufgerufen wird, also können Sie das überschreiben, indem Sie' Console.WriteLine ((d + Myd) .ToString ("# . # "));' oder welches Format auch immer Sie wollen, entweder aus den [Standard Numeric Format Strings] (https://msdn.microsoft.com/en-us/library/dwhawy9k (v = vs.110) .aspx) oder [Benutzerdefiniert] (https://msdn.microsoft.com/en-us/library/0c899ak8 (v = vs.110) .aspx). – Quantic

+0

ein Double ohne Dezimalzahl wird nur eine INT zurückgeben, wenn Sie Console.WriteLine tun –

Antwort

2

Der Wert 8 und 8.0 sind gleich. Wenn Dezimalzahlen in Ihren Ergebnissen angezeigt werden sollen, verwenden Sie einen Konverter wie N2, der mit 2 SigDig nach der Dezimalzahl festgelegt wird.

Console.WriteLine((d+Myd).ToString("N2")); 
0

Shannon ist correct. es gibt ein Double zurück, aber weil es alle 0 nach dem Komma sind, schneidet es ab. Wenn Sie 8,5 + 8 tun würden, würde es 16,5 zurückgeben. Wenn Sie eine Dezimalzahl benötigen, verwenden Sie einfach eine N1.