黑马程序员技术交流社区
标题:
装箱和拆箱是如何实现的?
[打印本页]
作者:
资建文
时间:
2012-8-24 02:12
标题:
装箱和拆箱是如何实现的?
装箱和拆箱是如何实现的?
作者:
童兴龙
时间:
2012-8-24 08:09
JDK1.5自动实现的,不需要强制令转换。看看源代码你就懂了。都是加了为你省去了强转指令的。
作者:
许庭洲
时间:
2012-8-24 08:54
using System;
publict class Test
{
public static void Main(String[] args)
{
int i = 10;
//将值类型的i装箱
//需要注意的是这里的装箱采用的是值的拷贝
object obj = i;
//检验是否装箱成功了
if(obj is int)
{
Console.WriteLine("数据已经装箱!");
}
//我们在这里更改i的值
i = 33;
Console.WriteLine("int i现在的值是:{0}",i);
Console.WriteLine("int i装箱的值是:{0}",obj);
int j = 10;
object obj = j;
//C#中的拆箱就是把一个对象类型显式地转换为值类型,
//注意:要转换的类型必须和值类型是兼容的。
int k = (int)obj;
Console.WriteLine("int k现在的值是:{0}",k);
}
}
作者:
刘逍遥
时间:
2012-8-24 21:50
引用类型是传递 引用,而值类型是传递值得拷贝。
值类型的装箱,等于是把值类型看成是引用类型的操作,
值类型的拆箱,等于是取出已装箱的值类型的值
具体深层次的操作当然是CLR做的操作,
作者:
张文
时间:
2012-8-25 02:07
楼主。你好。CSDN博客有篇详细的解释。你看看。
http://blog.csdn.net/xiven/article/details/5378470
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2