要点:Java对普通类型的变量是不支持引用传递的!
即下列是有问题的:
public static void swap(int i,int j){
int temp = j;
j=i;
i=temp;
}
public static void main(string[] args){
swap(a[i],a[j]);
}
——错误!
【解决途径】:
可通过传数组实现值的交换:
public static void swap(int[] a,int i,int j){
int temp = a[j];
a[j] = a[i];
a[i] = temp;
}
swap(a,i,j);
——Java是传引用,对普通类型变量是不支持引用传递的。
直接通过传普通类型变量,在方法体内部进行的操作无法对外部引用类型变量产生影响!
对于那种带return的方法,可以传普通变量,如:
public static void add(int i,int j) {
return i+j;
}