java 实现两个变量的互换(不借助第三个变量,即中间变量、临时变量)

变量的互换常用在数组排序算法中,当判断两个数组元素交互时,需要借助第三个变量来实现,即需要创建一个临时变量来共同完成互换,但是临时变量的创建增加了系统资源的消耗,如果需要交换的是两个整数类型的变量,那么可以使用更高效的方法:

        创建一个类,在该类的主方法中创建扫描器来接受两个变量值,那么可以位运算符中异或运算符来实现两个变量的交换。

import java.util.Scanner;

public class VariableExchange {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scanner = new Scanner(System.in);

System.out.println("请输入变量a的值");
long a = scanner.nextLong();

System.out.println("请输入变量b的值");
long b = scanner.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);
}

}

你可能感兴趣的:(java)