Java 如何获取与基元类型对应的引用类型?

Java 如何获取与基元类型对应的引用类型?,java,Java,我想要一个将类映射到类的函数,例如int.class->Integer。对于Integer: 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

我想要一个将类映射到类的函数,例如int.class->Integer。

对于Integer:

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行代码的外部库)

对于整数:

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行代码的外部库)


这在vanilla JDK中没有专门提供,但是如果您不想自己创建,则提供接受基元类型并返回相应的包装器类型。

这在vanilla JDK中没有专门提供,但是如果您不想创建自己的,提供接受基元类型并返回相应的包装器类型。

您能给我们一个这样做的目的吗?当然-我正在使用反射修复我从Jython调用的一个损坏的Java API。API使用Java整数类型,就好像它们是无符号的一样,例如0-65535范围内的短路。为此,我需要找到所有整数类型的Short.MAX_值,比如Short,等等。我不知道为什么这个值是闭合的。这个问题似乎是明确的,答案似乎是正确的。你能给我们一个这样做的目的吗?当然-我正在使用反射来修复我从Jython调用的一个损坏的Java API。API使用Java整数类型,就好像它们是无符号的一样,例如0-65535范围内的短路。为此,我需要找到所有整数类型的Short.MAX_值,比如Short,等等。我不知道为什么这个值是闭合的。问题似乎明确,答案似乎正确。这将为基本类型提供类,即
int.class
而不是
Integer.class
而不是
Integer.type
,您也可以使用
int.class
;更新:谢谢,我不知道int.class这将为基本类型提供类,即
int.class
not
Integer.class
而不是
Integer.type
,您也可以使用
int.class
;更新:谢谢,我不知道int.classa在Apache Commons Lang中也做同样的事情在Apache Commons Lang中也做同样的事情