对位操作,位运算符
三元运算符 ? : 1?2:3如果1是true 则执行 2 是false 则执行3
int y=(8>9)?6:5;
System.out.println(y);
结果为5;可嵌套
位运算符:&(“and”)|(“or”)^(“xor”) ~("not") >>位模式左移,<<位模式右移
0b 表示2进制
181 二进制表示: 10110101
00000001得出000000001
int a = (181 & 0b1 );int b = (181 & 0b0);
int c = (181 & 0b101);
int d = (181 & 0b100);
int e = (181 & 0b1001);
读者可以自己实践
int f = (128>>3);
00000000 00000000 00000001 00000000
经过运算变换为:00000000 00000000 00000000 00010000
int g = (128<<3);
00000000 00000000 00000001 00000000
经过运算变换为:00000000 00000000 00001000 00000000
怎么样可以最快让128变为1024? 位运算。
int h = (1<<35);//移位运算符的右操作数可以,除非做操作数是long类型,
//在这种情况下对右摸操作数模64
int h2 =(1<<3);//h和h2相等 等于8
System.out.println(a);
System.out.println(b);
System.out.println(c);
System.out.println(d);
System.out.println(e);
System.out.println(f);
System.out.println(g);
System.out.println(h);
System.out.println(h2);