本帖最后由 耿文达 于 2013-3-19 23:01 编辑
利用“一个数异或同一个数两次,结果还是最初的那个数”这个性质,代码如下:- class Test
- {
- public static void main(String[] args)
- {
- int n = 5,m = 9;
- System.out.println("n="+n+",m="+m);
-
- n = n ^ m;
- m = n ^ m; //此时n'=n^m,因此m' = (n^m)^m = n ;
- n = n ^ m; //n'' = n' ^ (n' ^ m)= m
- System.out.println("n="+n+",m="+m);
- }
- }
复制代码 |