现在学习封装类,Object通过自动装箱存入了一个Integer对象,后续为什么能够直接强转成int呢,强转成Integer我可以理解,然后通过自动拆箱赋值。但是直接(int)我就有点看不懂了。
Object obj = 11;
//int in = (Integer)obj;//要是这么写我还能理解。
int in = (int)obj;//这里为什么能够通过?
int in = (Integer)obj能通过,就说明int in = (int)obj也能通过。
第一个说明Ingeger是能够隐式转换为int的。
因为obj本身就是整形,只要类型一致就可以转换。
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!java会对基本数据类型进行自动拆箱和装箱,所以在强制转换的时候int会自动装箱成Integer