异或运算符和位运算符详解

一.异或运算符   ^

1.异或运算符是用符号“^”表示的,其运算规律是:转换成二进制的形式来对比每一位数,相同则结果为0,不同则结果为1。

public class Text {
    public static void main(String[] args){
        int a = 15;
        int b = 2;
        System.out.println("a 与 b 异或的结果是:" + (a^b));
    }
}

分析:         a 的值是15,转换成二进制为   1111,

                而b 的值是2,  转换成二进制为   0010,

  根据异或的运算规律,可以得出其结果为   1101;

即最终 a^b的值为13

二.位运算符(注意:有的面试公司可能会考察这一点

public class Text {
    public static void main(String[] args){
        int a = 2;
        System.out.println("2<<3:"+(2<<3));
    }
}

解析:2的二进制为:10

然后左移三位,为10000;转化为十进制为:0*2^0+0*2^1+0*2^2+0*2^3+1*2^4=16;

三.其他注意的地方

public class Text {
    public static void main(String[] args){
        System.out.println("1"+(2+2));
        System.out.println("1"+2+2);
        System.out.println(1+(2+2));
        System.out.println(1+2+2);
    }
}

需要注意的地方: 在输出的时候, 只要有一个参数是字符串, 整个输出结果都是字符串

原文地址:https://www.cnblogs.com/sutao/p/7156096.html