最近去Java面试,面试官有问我这个问题,boxing和unboxing知道,但是API的概念很模糊,更不知boxing和unboxing使用的API是什么,希望有大神能帮我解答
认证高级PHP讲师
这篇博客写得比较清楚:Java自动装箱与拆箱及其陷阱
先看这样一段代码
Integer a = 1; int b = 2; int c = a + b; Integer d = a + b;
这是调试结果
在java中,只有同类型直接才能直接做计算,但是这里没有进行任何的转型,第三行Integer和int做计算的时候会自动先unboxing 为int类型在做计算,第四行 先转化为int计算得出结果之后,在自动包装成Integer
拿integer来说, Integer.intValue() 和 Integer.valueOf(int x)
这篇博客写得比较清楚:Java自动装箱与拆箱及其陷阱
先看这样一段代码
这是调试结果
在java中,只有同类型直接才能直接做计算,但是这里没有进行任何的转型,第三行Integer和int做计算的时候会自动先unboxing 为int类型在做计算,第四行 先转化为int计算得出结果之后,在自动包装成Integer
拿integer来说, Integer.intValue() 和 Integer.valueOf(int x)