标签: java casting primitive
假设我有以下内容:
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在幕后如何处理这个问题?谢谢!
答案 0 :(得分:3)
该过程称为autoboxing。简而言之,编译器看到需要包装器(Integer)而不是原语(int)并自动添加转换。实际上你的演员Number并不是必需的。
Integer
int
Number