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

根本数据类型拆装箱

2013-12-22 
基本数据类型拆装箱自动拆箱与装箱Jdk5以后提供了自动拆箱(unboxing)与装箱(autoboxing),但是对拆装箱的细

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

Jdk5以后提供了自动拆箱(unboxing)与装箱(autoboxing),但是对拆装箱的细节进行了部分隐藏,需要注意

基本数据类型对应的包装类

Java是面向对象的语言,而基本数据类型只是字面量,不是对象。为了解决这个问题java引入了基本数据类型的包装类

Integer Double Long Short Character Boolean Float Byte

Integer i = 10; //自动装箱

Double a = i.DoubleValueOf();? //10.0

也可以使用更一般化的java.lang.Number类来自动装箱。例如:

Number a = 3.4f;

自动拆装箱的陷阱

Integer i = null;

Int a = I;? //编译无错误? 运行时出空指针异常

?? System.out.println(b1 == b2);//false

?

==是用来比较两个基本数据类型的值是否相同,同时==也可以判断两个对象的引用是否相同(是否是同一对象)。对于-128~127(1个字节)的值会在你自动拆装箱过程中重用,因此这个范围内的Integer类型对象是相同的,而超出这个范围的则不会得到重用,因此对象实不相等的。

?

?

热点排行