Kon*_*lph 61
通常,当您将值类型放入object(称为装箱)时,您需要将其拆分为完全相同的值类型.您无法转换为其他类型.这就是这里发生的事情.
如果您真的想要转换对象,首先需要将其解包.假设您的原始价值是float在您将其装箱之前object:
double d = (double) (float) value;
Run Code Online (Sandbox Code Playgroud)
或者使用其他人提出的方法,使用Convert.这具有不必知道原始类型的优点.
Dar*_*rov 11
这很正常.如果对象类型是float您无法将其强制转换为double因为它们的类型不同:
object o = 1.0f;
double d = (double)o; // will throw an exception
Run Code Online (Sandbox Code Playgroud)
你需要转换它:
double d = Convert.ToDouble(o);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9794 次 |
| 最近记录: |