java如何传入参数
参数传递的基本方式
Java中参数传递分为基本数据类型和引用数据类型两种方式:
- 基本数据类型(如
int、double等)通过值传递,方法内修改不影响原始值。 - 引用数据类型(如对象、数组)通过引用值传递,方法内修改对象属性会影响原始对象。
示例代码:
// 基本数据类型(值传递)
void modifyPrimitive(int num) {
num = 100; // 不影响原始值
}
// 引用数据类型(引用值传递)
void modifyObject(Student student) {
student.setName("Alice"); // 修改会影响原始对象
}
可变参数(Varargs)
使用...语法实现可变数量的参数,方法内部以数组形式处理:
void printValues(String... values) {
for (String val : values) {
System.out.println(val);
}
}
// 调用方式
printValues("A", "B", "C");
通过命令行传入参数
在main方法中通过String[] args接收命令行参数:
public static void main(String[] args) {
for (String arg : args) {
System.out.println(arg);
}
}
// 运行命令:java MyClass arg1 arg2
使用Scanner动态输入参数
通过Scanner类从控制台读取用户输入:
Scanner scanner = new Scanner(System.in);
System.out.print("输入整数:");
int inputNum = scanner.nextInt();
System.out.println("输入值为:" + inputNum);
scanner.close();
反射传递参数
通过反射动态调用方法并传入参数:

Method method = MyClass.class.getMethod("methodName", String.class, int.class);
method.invoke(myInstance, "test", 123); // 传入参数
注意事项
- 基本数据类型的包装类(如
Integer)仍遵循值传递规则。 - 可变参数必须作为方法最后一个参数。
- 反射传参时需确保参数类型与目标方法声明一致。






