前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java中的自动拆箱、装箱是指什么? 原

java中的自动拆箱、装箱是指什么? 原

作者头像
wuweixiang
发布2018-08-14 14:59:14
8440
发布2018-08-14 14:59:14
举报
文章被收录于专栏:吴伟祥吴伟祥

JAVA语言中有个名词叫自动拆箱、装箱,那这个自动拆箱、装箱到底是指啥?

自动拆箱、装箱是从JDK1.5开始才有的特性,其实它主要就是指基本类型与包装类的自动转换。

如int 与Integer类型。 int 是基本类型,而Integer是int的包装类,在JDK1.5之前,int类型的值是不能直接赋给Integer类型的值 的,也就是说 Integer integer = 5; 会报错,因为5是基本类型,而Integer是包装类,Integer的正确定义方式为: Integer integer = new Integer(5); 但是,从基本类型转换成包装类是经常使用的操作,尤其是Integer与int的转换很是频繁。所以在JDK1.5开始,它们之间的转换不在须要程序员再去进行转换了,JDK已经将它自动进行了转换,这种操作就叫自动拆箱、装箱。

代码语言:javascript
复制
int i = 5;
Integer ii = i;     //这种写法在JDK1.5及以后的版本是正确的,因为系统会自动将int向Integer进行转换,这种操作就叫自动装箱。

int j = ii;         //这种写法是将Integer的值自动转换成了int基本类型,这种自动转换的方法就叫自动拆箱。

不只是int与Integer可以自动转换,八大基本类型都可以, 以下是八大基本类型及对应的包装炻

基本类型 byte short int long float double char boolean 包装类型 Byte Short Integer Long Float Double Character Boolean

其中,int与Integer的转换最多也最频繁,所以有一点要注意,也是面试时常问到的问题: int与Integer的区别: 1.int的默认值 为0,而Integer的默认值为null,在使用Integer前需要初始化。 2.int是基本类型,而Integer是包装类,可以自动 拆箱、拆箱,Integer封装了很多的方法,

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档