我想将类映射到类的函数,例如int.class - >整数。
答案 0 :(得分:4)
这不是在vanilla JDK中特别提供的,但如果您不想自己动手,Guava提供Primitives.wrap(Class)
,它接受原始类型并返回相应的包装类型。< / p>
答案 1 :(得分:1)
对于整数:
int.class or the equivalent: Integer.TYPE;
与其他原始类型相同
double.class or Double.TYPE
float.class or Float.TYPE
char.class or Character.TYPE
long.class or Long.TYPE
boolean.class Boolean.TYPE
按如下方式使用:
Class intClass = int.class;
这是一个表示基本类型int的类。
使用该信息,您只需编写自己的映射器:(您不希望包含8行代码的外部库)
public Class getClassForPrimitiveType(Class clazz) {
if (clazz == int.class) return Integer.class;
if (clazz == float.class) return Float.class;
// TODO other primitives
}