【发布时间】:2019-07-15 06:24:41
【问题描述】:
如果将浮点数分配给双精度型,它会接受它,但如果浮点型首先分配给一个对象然后强制转换为双精度型,则会给出 InvalidCastException。
有人可以澄清一下吗?
float f = 12.4f;
double d = f;//this is ok
//but if f is assigned to object
object o = f;
double d1 = (double)o;//doesn't work, (System.InvalidCastException)
double d2 = (float)o;//this works
【问题讨论】:
-
查看下面的答案here
-
谢谢@martijn-van-put。该链接有帮助。我理解“Boxed T 只能拆箱为 T”。