1、異或運(yùn)算符的運(yùn)算:0^0=0, 1^0=1, 0^1=1, 1^1=0
2、異或運(yùn)算符可以做兩個整數(shù)(即char、short、int、long)的交換:
1 public static void intSwap(int int1, int int2) {
2 int1 = int1^int2;
3 int2 = int1^int2;
4 int1 = int1^int2;
5 }
下面是明確的示例:
1 int x = 1984;
2 int y = 2009;
3 x = x^y;
4 y = y^x;
5 x = y^x;
6 // x: 2009;
7 System.out.println("x: " + x);
8 // y: 1984
9 System.out.println("y: " + y);
3、異或運(yùn)算符的特點(diǎn)是:數(shù)a兩次異或同一個數(shù)b(a=a^b^b)仍然為原值a
異或只有在整數(shù)上有定義,更確切的說,是位運(yùn)算只在整數(shù)上有定義
從最根本的本質(zhì)來看,將任何數(shù)據(jù)看做字節(jié)的組合,那么按照字節(jié)依次做位運(yùn)算后的結(jié)果,也可以達(dá)成交換的目的。
posted on 2009-04-21 16:04
狼人 閱讀(784)
評論(0) 編輯 收藏 所屬分類:
Java