不用第三个变量就能交换两个变量值的五个方法
//第1种办法
public void
changeMethodA(int a, int b){
System.out.println(“changeMethodA交换之前\ta:”+a+”\tb:”+b);
a = a + b – (b = a);
System.out.println(“changeMethodA交换之后\ta:”+a+”\tb:”+b);
}
//第2种办法
public void changeMethodB(int a, int b){
System.out.println(“changeMethodB交换之前\ta:”+a+”\tb:”+b);
b = a + (a = b)*0;
System.out.println(“changeMethodB交换之后\ta:”+a+”\tb:”+b);
}
//第3种办法
public void
changeMethodC(int a, int b){
System.out.println(“changeMethodC交换之前\ta:”+a+”\tb:”+b);
a = a + b;
b =
a – b;
a = a – b;
System.out.println(“changeMethodC交换之后\ta:”+a+”\tb:”+b);
}
//第4种办法
public void
changeMethodD(int a, int b){
System.out.println(“changeMethodD交换之前\ta:”+a+”\tb:”+b);
a = a * b;
b =
a / b;
a = a / b;
System.out.println(“changeMethodD交换之后\ta:”+a+”\tb:”+b);
}
//第5种办法
public void
changeMethodE(int a, int b){
System.out.println(“changeMethodE交换之前\ta:”+a+”\tb:”+b);
a = a^b;
b =
a^b;
a = a^b;
System.out.println(“changeMethodE交换之后\ta:”+a+”\tb:”+b);
}
原文:http://www.cnblogs.com/wuxiang/p/3541307.html