Java Program to Swap Two Numbers Using Bitwise Operator2025年3月17日 | 阅读 3 分钟 在 Java 中,交换两个数字有许多方法。通常,我们使用 **Math 类** 的 **swap()** 方法,或者使用 **第三个(临时)变量** 来 **交换两个数字**。除了这两种方法,我们还可以 **使用位运算符(XOR)** 和 **使用除法和乘法** 来 **交换两个数字**。 在本节中,我们将重点介绍 **创建一个 Java 程序,使用位运算符(^)交换两个数字**。 使用位运算符位运算符:位异或运算符用于交换两个数字。它用符号 **(^) **表示。它比较两个操作数的位,如果它们相等则返回 **false** 或 **0**,如果不相等则返回 **true** 或 **1**。异或运算符的真值表如下: ![]() 我们可以使用位异或运算符在不使用 swap() 方法和第三个变量的情况下交换两个数字。我们必须遵循以下步骤:
现在,让我们通过一个示例来实现上述步骤并理解交换过程。 示例:使用位运算符交换变量 X = 5 和 Y = 9。 解决方案 步骤 1:变量 X 和 Y 的二进制等效值为: X = 5 = **0101** 且 Y = 9 = **1001** 步骤 2:计算 X = X ^ Y。 ![]() 步骤 2:计算 Y = X ^ Y。 ![]() 步骤 3:计算 X = X ^ Y。 ![]() 我们看到变量 X 包含 1001,相当于 9,而 Y 包含 0101,相当于 5。因此,变量 X 和 Y 已被交换。 X = 9 且 Y = 5 现在,让我们在 Java 程序中实现上述逻辑。 SwapTwoNumbersExample1.java 输出 Enter the first number: 5 Enter the second number: 9 Before swapping: a = 5, b = 9 After swapping: a = 9, b = 5 现在,让我们创建一个使用函数的程序来交换两个数字。 SwapTwoNumbersExample2.java 输出 Before swapping x= 12, y= 34 After swapping x= 34, y= 12 使用乘法和除法我们还可以使用乘法和除法运算符来交换两个数字。 SwapTwoNumbersExample3.java 输出 values before swapping: x = 10 y = 20 values after swapping: x = 20 y = 10 下一个主题Java 教程 |
我们请求您订阅我们的新闻通讯以获取最新更新。