读书人

面试题=====不要添加参数交换两个变量

发布时间: 2012-11-05 09:35:11 作者: rapoo

面试题=====不用添加参数交换两个变量的值
public static void testChange() {
int i = 10;
int j = 111;

// i=11 j=10;

/*
* i=i+j; j=i-j; i=i-j;
*
* System.out.println(i+" "+j);
*/

/*
* 1001 i 1100 j ------- 0101 i 1100 j ----- 1001 j 0101 i 1100 i
*
*
*
* 0101 i 1001 i ------- 1100 j
*/
i = i ^ j; // i
j = i ^ j; // j

i = i ^ j;

System.out.println(i + " " + j);

}
}

读书人网 >编程

热点推荐