位运算的面试题解析—按位异或运算:一个数异或运算另一个数两次,结果还是这个数。

本文介绍了一种使用算术运算和位运算在Java中交换两个变量值的方法,无需使用额外的临时变量。首先通过算术加减操作实现变量交换,接着展示了更高效的位异或(XOR)操作方法。
package Test;

public class Demo {
	public static void main(String [] args) {
		int a = 3;
		int b = 4;
		
		//第一种方法
		a = a + b;//a =3+4=7
		b = a - b;//b =3+4-4=3
		a = a - b;//a =3+4-3=4
		System.out.println("a="+a);
		System.out.println("b="+b);
		
		int s = 3;
		int m = 4;
		
		//第二种方法
		s = s^m;//s = 3^4
		m = s^m;//s =3^4^4=3
		s = s^m;//s = 3^4^3=4
		System.out.println("s="+s);
		System.out.println("m="+m);
	}
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值