Java 反射 - 检查方法参数类型

Java reflection - checking method parameter type

我正在使用此代码来检查方法参数类型,但它似乎不起作用。

知道我做错了什么吗?

Class<?>[] parameter_types = m.getParameterTypes();
if (parameter_types[0].equals(Integer.class)) {
   // DO SOMETHING
}

m是整型参数的方法:

public void m(int param);

Integerint 是不同的类型。 Integer 是引用类型 java.lang.Integerint 是原始类型并有自己的 Class 对象。

if (parameter_types[0].equals(int.class)) {

尝试

   String parameter_types = m.getParameterClassName(1);
      if (parameter_types.equals(int.class)) {
      //DO SOMETHING
   }

更多信息:click!