反射获取的Parameter类型参数名转换为String类型参数名
- 直接输出获取的Parameter类型参数名。
public class Hello {
public String print(String str,int i) {
return str+i;
}
//输出Parameter类型方法参数名
public static void main(String[] args) throws NoSuchMethodException, SecurityException {
Hello hello = new Hello();
Class helloClass = hello.getClass();
Method method = helloClass.getMethod("print",String.class,int.class);
Parameter[] param = method.getParameters();
for(int i=0;i<param.length;i++) {
System.out.println(param[i]);
}
}
}
输出结果为:
java.lang.String str
int i
- Parameter类型方法参数名转换为String类型。
public class Hello {
public String print(String str,int i) {
return str+i;
}
//获取print方法参数名称,将Parameter类型转换到String类型参数名
public String[] getParametersName(Parameter[] param) {
String[] paramname = new String[param.length];
for(int i=0;i<param.length;i++) {
String param1 = param[i].toString();
String name = param1.substring(param1.indexOf(" ")+1);
paramname[i] = name;
System.out.println(name);
}
return paramname;
}
//输出参数
public static void main(String[] args) throws NoSuchMethodException, SecurityException {
Hello hello = new Hello();
Class helloClass = hello.getClass();
Method method = helloClass.getMethod("print",String.class,int.class);
Parameter[] param = method.getParameters();
hello.getParametersName(param);
}
}
输出结果为:
str
i