Java中是否有类似“ typeof”的函数来返回原始数据类型(PDT)变量的类型或操作数PDT的表达式?
instanceof 似乎仅适用于类类型。
instanceof
请尝试以下操作:
int i = 20; float f = 20.2f; System.out.println(((Object)i).getClass().getName()); System.out.println(((Object)f).getClass().getName());
它将打印:
java.lang.Integer java.lang.Float
至于instanceof,您可以使用其动态对应项Class#isInstance:
Class#isInstance
Integer.class.isInstance(20); // true Integer.class.isInstance(20f); // false Integer.class.isInstance("s"); // false