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)