移位运算符
<<左移
a<<b,a转换为二进制后,向左移动b位。也可以理解成a*(2的b次方)
>>右移
a>>b,a转换成二进制后,向右移动b位。也可以理解成a/(2的b次方)
<<左移
a<<b,a转换为二进制后,向左移动b位。也可以理解成a*(2的b次方)
>>右移
a>>b,a转换成二进制后,向右移动b位。也可以理解成a/(2的b次方)
@Test
public void t1(){
int a = 5;
a = (a + 1) * 2 - 1;
//输出11
System.out.println(a);
a = 5;
a = (a + 1) <<1 - 1;
//输出6
System.out.println(a);
a = 5;
a = ((a + 1) <<1) - 1;
//输出11
System.out.println(a);
}