首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

11 jdk5根本数据类型的自动拆箱与装箱

2012-09-15 
11jdk5基本数据类型的自动拆箱与装箱?package cn.zyj11.review public class AutoBox {public static voi

11 jdk5基本数据类型的自动拆箱与装箱

?

package cn.zyj11.review; public class AutoBox { public static void main(String[] args) { //自动封箱解箱只在必要的时候才进行。还有其它选择就用其它的 Integer iObj=3;// 自动装箱 System.out.println(iObj+12);//自动拆箱 。iObj自动拆成int数据类型进行加发 /////////////////////////////////////////////////////////////// /* 基本Boolean/Byte/Integer(数值范围:-128至127)数据类型的对象缓存: 基本整数在包装时,他在在一个字节内(即-128~127)就把他缓存在池里。这就是享元设计模式(flyweight)。 享元模式(flyweight):有很多小的对象,它们有很多相同的属性,把这些相同的属性变为同一个对象,称为内部状态。 把那些不同的属性变为方法的参数,称为外部状态。 */ Integer i1=127; Integer i2=127; System.out.println(i1==i2);//true Integer i3=128; Integer i4=128; System.out.println(i3==i4);//false //这块不相等,因为是对象 Integer i5=Integer.valueOf(127); Integer i6=Integer.valueOf(127); System.out.println(i5==i6);//true Integer i7=Integer.valueOf(128); Integer i8=Integer.valueOf(128); System.out.println(i7==i8);//false //这块不相等,因为是对象 ////////////////////////////////////////////////////////////// Integer i9=new Integer(2); Integer i10=new Integer(2); System.out.println(i9==i10);//false } } ?

??? 简单类型和封装类型之间的差别:

??? 封装类可以等于null ,避免数字得0时的二义性。

??? Integer i=null;

??? int ii=i;会抛出NullException 异常。

??? 相当于 int ii=i.intValue();

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

热点排行