有时候,我们不想用值类型的值,就是想用一个引用..Net提供了一个名为装箱(boxing)的机制,它允许根据值类型来创建一个对象,然后使用对这个新对象的一个引用. 首先,回顾两个重要的事实,1.对于引用 类型的变量,它的值永远是一个引用:2.对于值类型的变量,它的值永远是该值类型的一个值. int i = 5; object o = i; int j = (int)o; 这里有两个变量:i是值类型的变量,o是引用类型的变量.将i的值赋给o有道理吗?o的值必须是一个引用,而数字5不是一个引用,它使
Net的类型分为两种,一种是值类型,另一种是引用类型.这两个类型的本质区别,值类型数据是分配在栈中,而引用类型数据分配在堆上.那么如果要把一个值类型数据放到堆上,就需要装箱操作:反之,把一个放在堆上的值类型数据取出来,则需要进行拆箱操作. 例如,对于如下简单的装箱和拆箱操作语句. int i = 123; object obj = i;//Boxing if( obj is int ) int j = (int) obj;//Unboxing 为了,更好的诠释装箱和拆箱操作,我借用MSDN关于
package com.ilaw.boson.controller; public class Demo { public static void main(String[] args) { Integer a = new Integer(2000); int b =2000; Integer c =b; System.out.println(a == b);//true,Integer和int进行操作的时候,对a进行拆箱处理 System.out.println(b == c);//true,