JavaSE7基础 使用位运算异或 进行两个变量的数值交换

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaSE7基础 使用位运算异或 进行两个变量的数值交换相关的知识,希望对你有一定的参考价值。



jdk版本  :jdk-7u72-windows-i586
系统     :Windows7
编辑器   :Notepad++ v7.4.2
注意事项 :博文内容仅供参考,不可用于其他用途。

 

 

代码

class Demo{
	public static void main(String[] args){
		int a=10;
		int b=20;
		
		//一般来讲,把这两个数交换可以申请一个中间变量temp
		//在高深一点的话,可以建立方程组
		//然而,在视频教程中老师 却是这样做的。。。
		a = a ^ b;
		b = a ^ b;// b = a ^ b ^ b;=a
		a = a ^ b;// a = a ^ b ^ a;=b   
		//数学结合编程,有趣。
		System.out.println("a:"+a+"b:"+b);
	}
}

 


编译与运行

技术分享

 




——————————————————————————————————————————
Java,优秀,值得努力学习。
学习资源:黑马程序员_Java基础视频-深入浅出精华版/*来自黑马云课堂,网上可以找到*/
如果您觉得博文内容有可以优化的地方,请留下评论,我会认真思考的。













以上是关于JavaSE7基础 使用位运算异或 进行两个变量的数值交换的主要内容,如果未能解决你的问题,请参考以下文章

位运算 : 巧妙使用异或(^)

Java位运算:位异或运算位与运算位或运算位取反运算左位移运算右位移运算无符号右移运算不用额外变量交换两个整数的值(使用位异或运算)

Java位运算:位异或运算位与运算位或运算位取反运算左位移运算右位移运算无符号右移运算不用额外变量交换两个整数的值(使用位异或运算)只出现一次的数字

Java位运算:位异或运算位与运算位或运算位取反运算左位移运算右位移运算无符号右移运算不用额外变量交换两个整数的值(使用位异或运算)只出现一次的数字

位运算---算法的基础

位运算---算法的基础