使用异或运算符交换两个数字的 Java 程序


在本文中,我们将学习如何在Java中使用异或位运算符交换两个数字。异或运算符是一个强大的工具,允许您执行位运算,其一个有趣的特性是可以用于在不使用临时变量的情况下交换两个变量。这种方法效率很高,可以在需要快速交换机制时使用。

问题陈述

给定两个整数,编写一个 Java 程序,使用异或运算符交换它们的值。
输入
Two integers are provided by the user.
输出
The values of the two integers after swapping.

使用异或运算符交换两个数字的步骤

以下是使用异或运算符交换两个数字的步骤

  • java.util 包导入Scanner 类用于用户输入。
  • 声明两个整型变量来保存数字的值。
  • 分三步使用异或运算符交换值
  • 将两个数字进行异或运算,并将结果存储在一个变量中。
  • 将更新后的变量与第二个数字进行异或运算,并将结果存储在第二个变量中。
  • 最后,将更新后的第一个变量与更新后的第二个变量进行异或运算,以完成交换。
  • 打印交换后的值。


使用异或运算符交换两个数字的 Java 程序

以下是使用异或运算符交换两个数字的示例

import java.util.Scanner;
public class ab31_SwapTwoNumberUsingXOR {
   public static void main(String args[]) {
      int a, b;
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter a value:");
      a = sc.nextInt();
      System.out.println("Enter b value:");
      b = sc.nextInt();
      a = a ^ b;
      b = a ^ b;
      a = a ^ b;
      System.out.println("Value of the variable a after swapping: " + a);
      System.out.println("Value of the variable b after swapping: " + b);
      sc.close(); 
   }
}

输出

Enter a value :
55
Enter b value :
64
Value of the variable a after swapping : 64
Value of the variable b after swapping : 55

代码解释

在这个程序中,我们使用异或运算符在没有临时变量的情况下交换两个整数。位运算异或修改了 a 和 b,交换了它们的值。程序使用System.out.println打印交换后的值,展示了高效的位运算和基本数据类型。

更新于:2024年11月5日

416 次浏览

开启您的职业生涯

通过完成课程获得认证

开始学习
广告
© . All rights reserved.