装箱和拆箱,区别装修和拆箱是类型转换是否为继承关系。

           //int num = 0;

            //object o = num;//装修,将值类型转化为引用类型。把int类型隐式转换为object。

            //int l = (int)o;//拆箱,将引用类型转化为值类型。把object类型显示转换为int类型。

            //Console.WriteLine(o);

            //Console.WriteLine(l);


            Stopwatch stopwatch = new Stopwatch();

            //由此可见同样一亿的数据,装箱和不装箱时间差别10倍

            //00:00:06.3164469

            //ArrayList array = new ArrayList();

            //00:00:00.6465905

            Listlist = new List();

            stopwatch.Start();


            for (int i = 0; i <100000000; i++)

            {

                //array.Add(i);//添加的类型为object value,而i为int类型,把int类型转为object 类型。装箱

                list.Add(i);//添加类型就是int类型所以不需要装箱这个操作,时间大大节省。

            }

            stopwatch.Stop();

            Console.WriteLine(stopwatch.Elapsed);

            Console.ReadLine();

你可能感兴趣的:(装箱和拆箱,区别装修和拆箱是类型转换是否为继承关系。)