Java中使用异或语句实现两个变量的互换
一般实现两个变量之间的互换要用第三个变量,这样做可以,但创建新变量,增加了系统开销。如果要交换的变量时两个整数型变量,可以用更高效的方法。例如:^(异或)操作,举例如下:
importjava.util.Scanner;
publicclassVariableExchange{
publicstaticvoidmain(Stringargs[]){
Scannerscan=newScanner(System.in);
System.out.println("请输入第一个整数变量:");
longA=scan.nextLong();
System.out.println("请输入第二个整数变量:");
longB=scan.nextLong();
System.out.println("A="+A+"\tB="+B);
System.out.println("执行变量互换后......");
A=A^B;//执行变量互换
B=B^A;
A=A^B;
System.out.println("A="+A+"\tB="+B);
}
}
输出结果:
run: 请输入第一个整数变量: 100 请输入第二个整数变量: 200 A=100B=200 执行变量互换后...... A=200B=100 BUILDSUCCESSFUL(totaltime:5seconds)