加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

当我们在Java中将Integer分配给int时,为什么编译器不会出错

发布时间:2020-12-15 02:03:05 所属栏目:Java 来源:网络整理
导读:当我们将Integer(object)赋给int(primitive)时,为什么编译器不会出错? int i;Integer ii = new Integer(5);i = ii;//no compilation error. 所有其他类型(byte-Byte,float-Float)都是这种情况. 是什么原因?我错过了什么吗? 解决方法 它被称为autoboxing /
当我们将Integer(object)赋给int(primitive)时,为什么编译器不会出错?

int i;
Integer ii = new Integer(5);
i = ii;//no compilation error.

所有其他类型(byte-Byte,float-Float)都是这种情况.

是什么原因?我错过了什么吗?

解决方法

它被称为autoboxing / unboxing.

从Java 1.5开始,编译器会自动将基元“装箱”到相应的类中(例如int和Integer,double和Double等),并根据需要取消框.

有关详细信息,请参阅文档中的this page.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读