package wu.zhidao;
import java.util.Scanner;
public class Test1 {
int x=2;
int y=3;
public void swap(int a,int b)
{
x=b;
y=a;
}
public static void main(String[] args) {
Test1 t=new Test1();
System.out.println("x="+t.x+" "+"y="+t.y);
t.swap(t.x, t.y);
System.out.println("x="+t.x+" "+"y="+t.y);
}
}
swap(ch)默认情况下 是 this.swap(ch),this表示该对象自己
即 Swap2.swap(ch);
java swap 方法:主要就是交换,在这里首先了解数据存储空间下面,有几个例子
public static void swap(int a,int b){
int temp=a;
a=b;
b=temp;
}
public static void swap(Excep c,Excep d){
Excep temp=c;
c=d;
d=temp;
}
public static void swap(List
List
e=f;
f=temp;
}
public static void swap(int[] a){
if(a.length>=2){
int temp =a[0];
a[0]=a[1];
a[1]=temp;
}
}
public static void main(String[] args) {
int a=2;
int b=3;
Excep c=new Excep();
Excep d=new Excep();
List
e.add(1);
e.add(2);
List
f.add(3);
f.add(4);
System.out.println("交换前:"+a+"、"+b);
swap(a,b);
System.out.println("交换后:"+a+"、"+b);
System.out.println("交换前:"+c+"、"+d);
swap(c,d);
System.out.println("交换后:"+c+"、"+d);
System.out.println("交换前:"+e+"、"+f);
swap(e,f);
System.out.println("交换后:"+e+"、"+f);
int[] g={1,2};
System.out.println("交换前:"+g+":"+g[0]+"、"+g[1]);
swap(g);
System.out.println("交换后:"+g+":"+g[0]+"、"+g[1]); }
输出结果:
交换前:2、3
交换后:2、3
交换前:Excep@527c6768、Excep@65690726
交换后:Excep@527c6768、Excep@65690726
交换前:[1, 2]、[3, 4]
交换后:[1, 2]、[3, 4]
说明直接整体用临时变量交换,最终不发生变化
交换前:[I@2a9931f5:1、2
交换后:[I@2a9931f5:2、1
对内部的交换,最终也会进行交换
同一个类内的方法
同一个类内的方法当然可以直接这样调用了啊