逻辑运算符:与,或,非,异或

1.与运算(&)

进行运算的两个数据,按二进制位进行“与”运算。

规则:0&0=0;   0&1=0;    1&0=0;     1&1=1;       

即: 两位同时为“1”,结果才为“1”,否则为0

2.或运算(|)

 进行运算的两个数据,按二进制位进行“或”运算。

 运算规则:0|0=0;   0|1=1;   1|0=1;    1|1=1;

 即 :参加运算的两个对象只要有一个为1,其值为1。

3.非运算:~

1取0,0取1 ~1 = 0, ~0 = 1 ~(10001) = 01110

4.异或运算(^)

参加运算的两个数据,按二进制位进行“异或”运算。

 运算规则:0^0=0;   0^1=1;   1^0=1;   1^1=0;

即:参加运算的两个对象,如果两个相应位为“异”(值不同),则该位结果为1,否则为0。

考点:交换两个变量的值(不借助第三个变量)

使用异或运算符:

例:a=6,b=5

核心代码:

a = a ^ b;

b = a ^ b;

a = a ^ b;

package dataStruct;
import java.util.Scanner;

/**
 * @ClassName: ChangeAB
 * @Description: TODO
 * @Author: hunterm
 * @Date: 2019/8/5 15:10
 * @Version:1.0
 */
public class ChangeAB {
    public static void main(String[] args) {
        System.out.println("请输入两个数A与B");
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        a = a ^ b;
        b = a ^ b;
        a = a ^ b;
        System.out.println("a ="+a +","+"b="+b);
    }
}

  

原文地址:https://www.cnblogs.com/maohaitao/p/11305971.html