boolean.class?

Dav*_*ave 8 java

前几天我注意到我可以调用boolean.class,但不能调用integer.class(或其他基元).是什么让布尔如此特别?

注意:我说的是boolean.class,而不是Boolean.class(这很有意义).

Duh:我尝试过integer.class,而不是int.class.我不觉得愚蠢:

glm*_*ndr 9

integer.class但是int.class.是的你可以.JRE 6:

public class TestTypeDotClass{
    public static void main(String[] args) {
        System.out.println(boolean.class.getCanonicalName());
        System.out.println(int.class.getCanonicalName());
        System.out.println(float.class.getCanonicalName());
        System.out.println(Boolean.class.getCanonicalName());
    }
}
Run Code Online (Sandbox Code Playgroud)

输出

boolean
int
float
java.lang.Boolean
Run Code Online (Sandbox Code Playgroud)


Tom*_*ine 7

你可以做到int.class.它给出了相同的Integer.TYPE.

int.class.isPrimitive(),boolean.class.isPrimitive(),void.class.isPrimitive(),等,都会给的值true.Integer.class.isPrimitive(),Boolean.class.isPrimitive()等等,将给出一个值false.