* B:面试题:
* 请自己实现两个整数变量的交换
* class Demo04 {
public static void main(String[] args) {
int x = 10 ;
int y = 20 ;
//用第三方变量交换
/*int temp ;
temp = x ;
x = y ;
y = temp ;*/
//不需要第三方变量,有弊端,若数据过大可能产生数据溢出
/*y = y - x ; //20-10=10
x = x + y ; //10+10=20*/
//不需要第三方变量,用位或来做
y = y ^ x ; // y=y^x
x = y ^ x ; //y^x^x=y x=y
y = y ^ x ; //y^x^y=y y=x
System.out.println("x = " + x + ",y = " + y) ;
}
}
* 注意:以后讲课的过程中,我没有明确指定数据的类型,默认int类型。