您的位置:首页 > 编程语言 > C#

类型转换续:装箱和拆箱

2009-12-31 22:02 375 查看
装箱和拆箱是什么呢?装箱就是把一个值的类型转化为object类型,拆箱就是把这个object类型的值再转换为原来的类型。

代码倒是很简单的,将int类型的i值赋给object,这就是装箱,然后又定义一个int类型的x来接收j传来的值,这就是拆箱。


int i = 1; //备货


object j = i; //装箱


int x = (int)j; //拆箱取货

至于这个装箱和拆箱有什么实际用途,本人目前还不知道

。不过既然C#弄出来这个东西,自然有它的道理,估计以后学的深入了就知道了。

装箱和拆箱需要注意的问题是:装箱不但装进去了值,还装进去了原始的数据类型。

比如上面的代码,如果将最后一行这样写,就无法通过编译:


double x = (double)j;

原因是j在装箱的时候已经记录过了,这个数据是int类型的,不能在拆箱时候强制转换成double类型。改成下面的代码就没问题了:


double x = (int)j;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息