不用第三個參數(shù)實現(xiàn)數(shù)字變量內(nèi)容交換

字號:


    今天看到異或的一個應(yīng)用就是交換兩個數(shù)字變量,代碼很簡單。
    看代碼
    <?php
    $a = 5;
    $b =6;
    $a = $a^$b;
    $b = $a^$b;
    $a = $a^$b;
    echo $a.$b;
    ?>
    這樣就實現(xiàn)了兩個變量的轉(zhuǎn)換
    分析一下
    兩個數(shù)$a,$b當(dāng) 第一次異或后結(jié)果,再對$a 異或則返回的是$b,反之亦然。
    還有一種加減法實現(xiàn)了不用第三個參數(shù)進行了數(shù)據(jù)交換
    <?php
    $a = $a + $b;
    $b = $a - $b;
    $a = $a -$b
    ?>
    這樣也實現(xiàn)了數(shù)據(jù)的交換。