将原始整数转换为数字类型

3

假设我有以下内容:

int a = 2;
Number b = (Number) a;

System.out.println(b); // Prints 2

http://java.sun.com/docs/books/jls/first_edition/html/15.doc.html#238146 中指出,原始值不可转换为引用类型。Java是否知道如何从原始int创建一个Integer对象,并将其强制转换为超类?Java在幕后是如何处理这个问题的?谢谢!

1个回答

3
该过程称为自动装箱。简而言之,编译器看到需要包装器(Integer)而不是基本类型(int),并自动添加转换。实际上,您对Number的强制转换是不必要的。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接