基本数据类型传递值案例
package www.csdn.net.cls.demo01;
public class User {
// a与b的值互换
public static void change(int a, int b) {
int temp; // 中间变量
temp = a;// 把a赋值给temp
a = b;// 把b赋值给a
b = temp;// tmp赋值给b
System.out.println(a+"xxxx"+b);
}
public static void main(String[] args) {
int a=4;
int b=5;
User.change(a, b);//值传递过去了
System.out.println(a+"xxxxxx"+b);
}
}
引用类型传递值的案例
package www.csdn.net.cls.demo01;
public class Employee {
private int salary;//薪水
private int comm;//奖金
public Employee(int salary,int comm) {
this.salary=salary;
this.comm=comm;
}
//把薪水和奖金互换
public static void change(Employee emp){
int temp;
temp=emp.salary;//记录薪水
emp.salary=emp.comm;//把奖金付给薪水
emp.comm=temp;//把记录的薪水 赋值给奖金.
System.out.println(emp.salary+"-----"+emp.comm);
}
public static void main(String[] args) {
Employee employee = new Employee(10000,2000);
Employee.change(employee); //引用地址
System.out.println(employee.salary+"-----"+employee.comm);
}
}