编一个程序,实现交换2个变量里面的数据,不使用第三个变量的情况下,例如 变量 a= 3;b=5; 交换后则变成:a=5,b=3;
时间: 2024-04-11 18:27:57 浏览: 51
您可以使用算术运算和位运算的方式,在不使用第三个变量的情况下交换两个变量的值。以下是一个示例程序:
```java
public class SwapVariablesWithoutTemp {
public static void main(String[] args) {
int a = 3;
int b = 5;
System.out.println("交换前:");
System.out.println("a = " + a);
System.out.println("b = " + b);
// 使用算术运算和位运算进行交换
a = a + b;
b = a - b;
a = a - b;
System.out.println("交换后:");
System.out.println("a = " + a);
System.out.println("b = " + b);
}
}
```
输出结果:
```
交换前:
a = 3
b = 5
交换后:
a = 5
b = 3
```
在上述代码中,我们利用了算术运算和位运算的性质进行交换。具体步骤如下:
1. 将变量 `a` 和 `b` 的值相加,然后将结果赋给变量 `a`,此时 `a` 存储的是两个数的和。
2. 将变量 `a` 减去原来的 `b` 的值,然后将结果赋给变量 `b`,此时 `b` 存储的是原来的 `a` 的值。
3. 将变量 `a` 减去原来的 `b` 的值,然后将结果赋给变量 `a`,此时 `a` 存储的是原来的 `b` 的值。
经过这样的操作,变量 `a` 和 `b` 的值就完成了交换。
阅读全文