此方法用于将指定的Decimal的值转换为等效的双精度浮点数。此方法可能会产生舍入错误,因为双精度浮点数的有效位数比十进制数少。
Syntax: public static double ToDouble (decimal d);
Here, d is the decimal value which is to be converted.
Return value: It returns a double-precision floating-point number equivalent to d.
例子:
// C# program to demonstrate the
// Decimal.ToDouble(Decimal) Method
using System;
class GFG {
// Main Method
public static void Main()
{
try {
// Taking decimal variables
Decimal dec1 = 0.0000000000134563456789M;
Decimal dec2 = 4589662514452860951234M;
// using ToDouble(Decimal) Method
Double val1 = Decimal.ToDouble(dec1);
// using ToDouble(Decimal) Method
Double val2 = Decimal.ToDouble(dec2);
// Printing the Double value
Console.WriteLine("The Double value "
+ "is : {0}", val1);
// Printing the Double value
Console.WriteLine("The Double value "
+ "is : {0}", val2);
}
catch (OverflowException e)
{
Console.Write("Exception Thrown: ");
Console.Write("{0}", e.GetType(), e.Message);
}
}
}
输出:
The Double value is : 1.34563456789E-11
The Double value is : 4.58966251445286E+21
参考:
- https://docs.microsoft.com/zh-cn/dotnet/api/system.decimal.todouble?view=netframework-4.7.2