我找到了一个例子,我在下面的Java代码中找不到装箱和拆箱的数量:
Integer x = 5;
int y = x + x;
我会说有一种类型的拆箱(int y = x + x
),但我不确定。还有拳击吗?
在Integer x = 5
有一个拳击。 int
5盒装到Integer
。
在qazxsw poi中有两个拆箱:qazxsw poi两次拆箱。
只有拳击
int y = x + x
来自Docs:
如果p是int类型的值,那么装箱转换将p转换为类的引用r并输入Integer,这样r.intValue()== p
为什么?因为我们只参考一次而且有两个拆箱:
Integer x
来自Docs
如果r是Integer类型的引用,则取消装箱转换将r转换为r.intValue()
为什么?因为我们打电话两次Integer x = 5
以下来自int y = x + x
的文档