在 Java 中,“Parameter 参数”根据不同场景有不同含义,下面分最常见几种情况说明如何“打印”。
如果你指的是 方法的 Parameter(java.lang.reflect.Parameter),可以用反射:
import java.lang.reflect.Method;
import java.lang.reflect.Parameter;
public class Test {
public void hello(String name, int age) {}
public static void main(String[] args) throws Exception {
Method method = Test.class.getMethod("hello", String.class, int.class);
Parameter[] parameters = method.getParameters();
for (Parameter p : parameters) {
System.out.println("参数名: " + p.getName());
System.out.println("参数类型: " + p.getType());
System.out.println("是否是可变参数: " + p.isVarArgs());
}
}
}
⚠️ 注意:
javac -parameters Test.java
或在 Maven 中:
<compilerArgs>
<arg>-parameters</arg>
</compilerArgs>
如果是指 方法被调用时传进来的参数:
public void hello(String name, int age) {
System.out.println("name = " + name);
System.out.println("age = " + age);
}
@GetMapping("/test")
public void test(@RequestParam String name) {
System.out.println(name);
}
如果是 JDBC Parameter:
PreparedStatement ps = conn.prepareStatement("SELECT * FROM user WHERE id = ?");
ps.setInt(1, 10);
System.out.println(ps); // 部分驱动可直接打印
或使用日志(如 p6spy、log4jdbc)。
list.forEach(x -> System.out.println(x));
❌ Parameter 不能直接 toString() 看到值
✅ 参数 值 只能在方法内部打印
✅ 参数 元信息 才能用反射
如果你指的是 某一种具体场景(Spring、MyBatis、反射、AOP、JUnit 等),可以直接告诉我,我给你精确示例。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。