接受用户输入的两个整数,存储到两个变量里面,交换变量存储的值。

本文介绍了三种交换两个整数值的方法:1.使用临时变量,2.通过求和操作,3.利用异或运算。异或法基于异或运算的性质,即一个数异或同一个数两次结果不变,实现无额外变量的值交换。

1.临时变量法

public class Test {
	public static void main(String[] args) {
		int a = 7;
		int b = 89;
		int c;//定义临时变量c
		c = a;
		a = b;
		b = c;
		System.out.println("a=" + a);
		System.err.println("b=" + b);
	}
}	
输出结果:
a=89
b=7

2.求和法

public class Test {
	public static void main(String[] args) {
		int a = 4;
		int b = 98;
		a = a + b;
		b = a - b;
		a = a - b;
		System.out.println("a=" + a);
		System.err.println("b=" + b);
	}
}
输出结果:
a=98
b=4

3.异或法

一个数 异或 另一个数 两次 结果还是它本身;
比如3 ^ 4 ^ 4 = 3;
3: 00000011
^
4: 00000100
----------------------------------
= 00000111
^
4: 00000100
--------------------------

= 00000011
计算结果与3相同;

public class Test {
	public static void main(String[] args) {
		int a = 55;
		int b = 33;
		a = a ^ b;
		b = a ^ b;
		a = a ^ b;
		System.out.println("a=" + a);
		System.err.println("b=" + b);
	}
}
输出结果:
a=33
b=55
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值