我有这样的方法
public int foo()
{
return (int) MainJsonValues[JsonKeys.DP_PORT.Value];
}
Run Code Online (Sandbox Code Playgroud)
此方法应进行强制转换并返回此值
我是如何调用这个方法的
myObj.foo()
Run Code Online (Sandbox Code Playgroud)
所以,这很奇怪,因为我们可以看到 value 包含在 Dictionary
您可以在屏幕截图上看到我的调试
所以,据我所知,这个方法不能转换long为int...
错误
我究竟做错了什么?
装箱值类型只能拆箱为拆箱类型或可为空的拆箱类型。也就是说,如果你有一个盒装的长,你可以把它拆箱到long或long?,但不能将其任何其他类型。(详情见评论。)
因此,您需要分两步进行转换:
object x = 1L; // boxed long
long y = (long)x; // unboxed
int z = (int)y;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
283 次 |
| 最近记录: |