2.位运算符

class Demo1_Operator{
public static void main(String[] args){
&,|,^,~ 的用法
&:有0则0
|:有1则1
^:相同则0,不同则1
~:按位取反

System.out.println(6 & 3); //2
System.out.println(6 | 3); //7
System.out.println(6 ^ 3); //5
System.out.println(~6);

}
}

class Demo2_Operator {
public static void main(String[] args) {
/*
* 位异或运算符的特点

	* ^的特点:一个数据对另一个数据位异或两次,该数本身不变。
	*/

	//System.out.println(5 ^ 10 ^ 10);
	//System.out.println(5 ^ 10 ^ 5);

int x=10;
int y=5;
int temp;
temp=x;
x=y;
t=temp;
//不需要定义第三方变量,有弊端,有可能会超出int的取值范围

x=x+y;
y=x-y;
x=x-y;
//不需要第三方变量,通过^来做
x=x^y;
y=x^y;
x=x^y;
System.out.println("x = " + x + ",y = " + y);
}
}

猜你喜欢

转载自blog.csdn.net/DDDDL12358/article/details/87358856