天天看點

位移運算

public static void main (String [] args){
   int a =3  int b=5      
得到值為a=3,b=5      
現在要求a得到b的值,b得到a的值      
第一種方法:用第三方變量      
int c;      
c=a;      
a=b;      
b=c;      
這樣可以得到a=5,b=3.      
2.若現在要求不能用第三方變量      
則就得這樣      
a=a+b;8      
b=a-b;5      
a=a-b;3      
這樣可以得到數值,但是這樣數值過大,容易資料丢失(你懂的,超出int的最大值)      
3.a=a^b; 3^5      
b=a^b;(3^5)^5      
a=a^b;【(3^5)^5】^3      
這樣得到的數值是已經換位成功的。小夥伴們知道是什麼原因嗎?      
System.out.print("a="+a+"b="+b);      
}

繼續閱讀