gpt4 book ai didi

c# - Convert.ToDouble 中空值的行为不正确,这可能吗?

转载 作者:太空狗 更新时间:2023-10-29 22:08:05 25 4
gpt4 key购买 nike

很奇怪,星期五我在公司的项目中工作,我发现了一些“坏”代码或奇怪的代码。我说,我不相信 Microsoft Framework 中的那个错误。

我发现:

double? euros = null;
double test = Convert.ToDouble(euros);

这个测试结果是0.0而不是异常错误。

我很惊讶,因为我预计会有某种异常。

谁能告诉我为什么会这样?

最佳答案

都是关于Convert.ToDouble(object) 方法的 implemented 的。 ;

public static double ToDouble(object value)
{
return value == null? 0: ((IConvertible)value).ToDouble(null);
}

如您所见,如果 valuenull,它将返回 0

还有 documented作为;

Return Value

A double-precision floating-point number that is equivalent to value, or zero if value is null.

关于c# - Convert.ToDouble 中空值的行为不正确,这可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25585060/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com