java 方法中是如何传递参数
时间: 2024-10-09 13:01:27 浏览: 26
在 Java 中,方法传递参数主要有两种方式:
1. **值传递(Pass by Value)**:这是默认的方式,当你将一个变量作为参数传递给方法时,实际上是复制了该变量的副本。方法内部对参数所做的任何修改都不会影响原始变量。例如:
```java
public void change(int num) {
num = num + 1; // 这里num只是局部变量,不会改变传入的参数值
}
int x = 5;
change(x); // x仍然是5,因为方法改变了副本
```
2. **引用传递(Pass by Reference)**: 对于引用类型的参数(如对象、数组),实际上传递的是对象的引用,也就是内存地址。这意味着方法可以修改对象的状态,因为它是通过原始对象的引用来操作的。比如:
```java
public void changeList(List<String> list) {
list.add("new item"); // 这会直接改变原列表
}
List<String> myList = new ArrayList<>();
changeList(myList); // myList现在包含新的元素
```
Java 的基本数据类型(如 int、double 等)是值传递,而引用数据类型(如 Object、String 或自定义对象)是按引用传递。
阅读全文