public class Main{
public static void main(String[] args) {
int a=1,b=2;
a=a+b; //a=3,b=1 此时的a 为a b的和
b=a-b; //a=3,b=2 a b的和-b --也就是说b为之前的a
a=a-b; //a=1,b=2 a b的和-之前的a --也就是说a为之前的b
System.out.println(a+" "+b);
//一个数据针对另一个数据位异或两次,该数不变
//a^b与上面的a+b类似 此时的b为a^b
b=a^b; //b与之前的a进行^运算就是之前的b b与之前的b^运算就是之前的a
a=b^a; //获取之前的b
b=b^a; //获取之前的a
System.out.println(a+" "+b);
}
}
/**
* 输出
* 2 1
* 1 2
*/
不用第三个变量交换a,b的值
最新推荐文章于 2021-12-09 13:59:27 发布