一、開發常用的方式—第三方變量法
System.out.println("-------1.普通開發使用的第三方替換法----------");
int a1 = 1;
int b1 = 2;
int x ;
x = a1;
a1 = b1;
b1 = x;
System.out.println("交換後: a1 = "+a1);
System.out.println("交換後: b1 = "+b1);
Run:
-------1.普通開發使用的第三方替換法----------
交換後: a1 = 2
交換後: b1 = 1
二、使用 異或運算符號 ^
1,原理:
1. ^是異或運算符,異或的規則是轉換成二進制比較,相同爲0,不同爲1.
2. a^b^a = a
2. code
System.out.println("--------2.面試問到的異或計算法---------");
System.out.println("原理:a^b^a = a ");
int a2 = 1;
int b2 = 2;
a2 = a2^b2;
b2 = a2^b2;//b2 = a2^b2^b2 = a2
a2 = a2^b2;//a2 = a2^b2^b2 = b2
System.out.println("交換後: a2 = "+a2);
System.out.println("交換後: b2 = "+b2);
Run:
--------2.面試問到的異或計算法---------
原理:aba = a
交換後: a2 = 2
交換後: b2 = 1