前言
除了用借助temp来实现两个数的交换,我们还可以用位运算,不需要借助第三个变量,只要利用交换律和自反律,就可以将他们交换。
原理
运算法则:
交换律:A ^ B = B ^ A;
自反律:A ^ B ^ B = A ^ 0 = A
代码实现
第一次
代码如下(示例):
public class Cal01 {
public static void main(String[] args){//异或运算实现两个数交换
int m = 3;
int n = 5;
m = m ^ n;
n = m ^ n;//n=(m^n) ^n=m
m = n ^ m;//m=m^ (m^n)=n
System.out.println("m="+m);
System.out.println("n="+n);
}
}
给定两个数的值,交换他们的位置。
后续还需补充