如何不使用第三个变量来交换两个数的值

通常我们的做法是(尤其是在学习阶段):定义一个新的变量,借助它完成交换

$a = 10;
$b = 20;
$temp = $a;
$a = $b;
$b = $temp;

不使用第三个变量交换两个数字的值

  1. 算数法

    $a = 10;
    $b = 20;
    $a = $a+$b ;//10+20=30
    $b = $a-$b;//30-20=10
    $a = $a-$b;//30-10=20
    
  2. 位计算方法

    $a = 10;//   01010
    $b = 20;//   10100
    $a = $a^$b;//11110
    $b = $a^$b;//01010
    $a = $a^$b //10100
    
如果本文对您有所帮助,您可以点打赏击请作者喝杯咖啡。