java方法参数是值传递还是引用传递
1.java方法传参机制
- 方法的形参的传递机制:值传递
- 如果参数是基本数据类型,此时实参赋给形参的是实参真实存储的数据值。
- 如果参数是引用数据类型,此时实参赋给形参的是实参存储数据的地址值。
2.方法参数值传递示例
2.1.方法参数是基本数据类型
public class Test1 {
public static void main(String[] args) {
int v1 = 1;
int v2 = 2;
int temp = v1 ;
v1 = v2;
v2 = temp;
System.out.println("v1 = " + v1 + ", v2 = " + v2);
}
}
2.2.方法参数是引用数据类型
public class App {
public static void main(String[] args) {
User user = new User();
user.v1 = 1;
user.v2 = 2;
swap(user);
System.out.println(user.v1+","+user.v2);
}
public static void swap(User user) {
int temp = user.v1;
user.v1 = user.v2;
user.v2 = temp;
}
}
class User{
int v1;
int v2;
}