我想知道Java中的int.class和Integer.TYPE之间的区别吗?
答案 0 :(得分:16)
绝对没有。如果您运行以下代码,则会看到int.class
与Integer.TYPE
相同。
public class Test {
public static void main(final String[] args) {
System.out.println(int.class == Integer.TYPE);
}
}
答案 1 :(得分:6)
.class 关键字获取Class对象代表基本类型和类类型,而wrapper primitive class的 .TYPE 字段允许你得到该对象包装的原始类型的Class。
答案 2 :(得分:1)
绝对错误检查:
public static void main(String[] args) {
System.out.println(int.class.equals(Integer.TYPE));
System.out.println(Integer.class.equals(Integer.TYPE));
}
输出: 真正 假
Boolean.TYPE == boolean.class
Byte.TYPE == byte.class
Short.TYPE == short.class
Character.TYPE == char.class
Integer.TYPE == int.class
Long.TYPE == long.class
Float.TYPE == float.class
Double.TYPE == double.class
Void.TYPE == void.class