java函数传参代码
时间: 2024-01-02 10:18:51 浏览: 94
在Java中,函数的参数传递有两种方式:值传递和引用传递。
对于基本数据类型,如int、double等,传递的是值的拷贝。这意味着在函数内部修改参数的值不会影响到函数外部的变量。例如:
```java
public class FunctionTest {
public static void main(String[] args) {
FunctionTest functionTest = new FunctionTest();
int a = 11;
int b = 22;
functionTest.swap(a, b);
System.out.println(a); // 11
System.out.println(b); // 22
}
public void swap(int c, int d) {
int mid = c;
c = d;
d = mid;
}
}
```
对于对象数据类型,如String、StringBuilder等,传递的是对象的引用。这意味着在函数内部修改参数的引用会影响到函数外部的对象。例如:
```java
public class FunctionTest {
public static void main(String[] args) {
FunctionTest functionTest = new FunctionTest();
StringBuilder a = new StringBuilder("11");
StringBuilder b = new StringBuilder("22");
functionTest.swap(a, b);
System.out.println(a); // 22
System.out.println(b); // 11
}
public void swap(StringBuilder c, StringBuilder d) {
StringBuilder mid = c;
c = d;
d = mid;
}
}
```
请注意,在第二个例子中,StringBuilder对象的引用被交换了,因此在函数外部的打印结果与初始值相反。
阅读全文