[Java] 不使用第三个变量实现两个整数类型变量互换(异或运算符)

来源:互联网 发布:交大知行大厦地址 编辑:程序博客网 时间:2024/06/08 05:37

在对变量进行互换时,通常的做法是创建一个临时变量来共同完成互换,但临时变量的创建增加了系统资源的消耗。

其实,如果需要交换的是两个整数类型的变量,则可以使用异或运算符( ^ )进行互换。

import java.util.Scanner;public class VariableExchange {    public static void main(String[] args) {        Scanner scan = new Scanner(System.in);        System.out.println("请输入变量A的值");        long A = scan.nextLong();        System.out.println("请输入变量B的值");        long B = 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);    }}

结果

0 0