如何在JAVA中找到Method的返回类型?

sun*_*leo 10 java reflection

任何人都可以帮我找到JAVA中方法的返回类型.我试过这个.但不幸的是它不起作用.请指导我.

 Method testMethod = master.getClass().getMethod("getCnt");

  if(!"int".equals(testMethod.getReturnType()))
   {
      System.out.println("not int ::" + testMethod.getReturnType());
   }
Run Code Online (Sandbox Code Playgroud)

输出:

不是int :: int

Gab*_*tti 13

该方法getReturnType()返回Class

你可以试试:

if (testMethod.getReturnType().equals(Integer.TYPE)){ 
      .....;  
}
Run Code Online (Sandbox Code Playgroud)

  • 当将实例与已知常量相等时(即Integer.TYPE.equals(testmethod.getReturnType())`),通常可以很好地反转equals以避免潜在的NPE. (7认同)

See*_*ega 5

if(!int.class == testMethod.getReturnType())
{
  System.out.println("not int ::"+testMethod.getReturnType());
}
Run Code Online (Sandbox Code Playgroud)