1. 实现两个变量值交换:
public static void main(String[] args) {
int a = 3;
int b = 5;
int temp = a;
a = b;
b = temp;
System.out.println(a);
System.out.println(b);
System.out.println("----------------");
a = a + b;
b = a - b;
a = a - b;
System.out.println(a);
System.out.println(b);
}上面代码在进行a和b变量值互换时,实现了两种方式:一种利用临时变量;另一种则是利用两个变量的加减,不借助于临时变量。
2.
public class SwapTest2 {
public static void change(char[] cs, char c){
cs[0] = ‘C‘;
c = ‘D‘;
}
public static void swap(char[] cs){
char temp = cs[0];
cs[0] = cs[1];
cs[1] = temp;
}
public static void main(String[] args) {
char[] ch = {‘A‘,‘B‘};
swap(ch);
System.out.println(ch);
change(ch, ch[1]);
System.out.println(ch);
}
}Java是值传递,对于数组来说,传递的是数组的首地址。利用数组可以实现值交换。
原文:http://zlfwmm.blog.51cto.com/5892198/1694422