A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 郁金香大公爵 中级黑马   /  2015-7-24 09:18  /  268 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

基本数据类型的自动装箱(autoboxing)、拆箱(unboxing)是自JDK1.50开始提供的一种新的功能。
    因为有8个基本数据类型,所以对应有8个包装类。这8个包装类分别是:Byte, Short, Integer, Long, Float, Double,Character, Boolean,它们的使用方式都是一样的,通过自动装箱和拆箱可以实现基本数据类型与包装类型的双向转换。
在JDK1.5之前,我们要实现基本类型和包装类之间的转换,是通过包装类提供的方法:Integer i = Integer.valueOf()和int j =i.intValue()来做互相转换的。
JDK1.5之后,编译器会在我们做赋值操作的时候帮我们自动完成基本类型和包装类之间的相互转换,这样一来方便了基本类型数据和它们包装类的使用。
基本数据类型与对象的差别:
基本数据类型不是对象,是使用int、double、boolean等定义出来的变量。
下面我主要以int和Integer作为主要讲解对象:
一、基本数据类型没有可调用的方法:
int t = 1; t.后面是没有方法滴;
Integer t =1; t. 后面就有很多方法可让你调用了,比如说:equals(Objectobj)toString()。更多方法可以查阅API文档的java.lang。
二、那么基本类型和包装类之间的转换的过程是怎么样的呢?
通过一个例子来具体描述:
Integer i = 7;
相当于编译器自动为作以下的语法编译:Integer i = Integer.valueOf(7);
装箱完成再看一下拆箱的转换过程:
Integer i = 3;
i = i+ 4;
实际上编译器自动执行了 int t = i.intValue();

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马