位运算

```java

System.out.println(Integer.toBinaryString(6));//110

System.out.println(Integer.toBinaryString(-6));//11111111111111111111111111111010

System.out.println(6>>1);//3

System.out.println(6<<1);//12

System.out.println(6>>>1);//3

System.out.println(-6>>1);//-3

System.out.println(-6<<1);//-12

System.out.println(-6>>>1);//2147483645

System.out.println(Integer.parseInt("01111111111111111111111111111101",2));//2147483645

```

a<< b  将二进制形式的a左移b位,低位空出的所有b位补0;

a >> b  将二进制形式的a右移b位,高位空出的所有b位补原来的符号位;

a>>>b 将二进制形式的a右移b位,高位空出的所有b位补0;

没有<<<符号,谨记; C++语言中有那个符号,不过意思不一样

你可能感兴趣的:(位运算)