1. 程式人生 > >java-兩個整數變數的交換-不需要定義第三方變數

java-兩個整數變數的交換-不需要定義第三方變數

程式碼如下:

class Example {
    public static void main(String[] args) {
        /*
        * 位異或運算子的特點
        * ^的特點:一個數據對另一個數據位異或兩次,該數本身不變。
        */

        //System.out.println(5 ^ 10 ^ 10);
        //System.out.println(5 ^ 10 ^ 5);


        int x = 10;
        int y = 5;

        //需要第三方變數,開發推薦用這種
        /*
int temp; temp = x; x = y; y = temp; */ //不需要定義第三方變數,有弊端,有可能會超出int的取值範圍 /* x = x + y; //10 + 5 = 15 y = x - y; //15 - 5 = 10 x = x - y; //15 - 10 = 5 */ //不需要第三方變數,通過^來做 x = x ^ y; //
10 ^ 5 y = x ^ y; // 10 ^ 5 ^ 5 y = 10 x = x ^ y; // 10 ^ 5 ^ 10 x = 5 System.out.println("x = " + x + ",y = " + y); } }