比如111右移两位是27,然后用27左移两位是108,明白左移是乘以2的n次方,右移是除以2的n次方,请问我如何让27左移两位本来是多少就是多少呢,如111(110,109)右移两位,在左移回来的时候还是111而不是108public class data17 {
public static void main(String[] args) {
int a=110;
int c=-4;
int b=2;
int d=2;
System.out.println("a 的移位结果:"+(a>>b));
System.out.println("c 的移位结果:"+(c<<d));
}
}
public static void main(String[] args) {
int a=110;
int c=-4;
int b=2;
int d=2;
System.out.println("a 的移位结果:"+(a>>b));
System.out.println("c 的移位结果:"+(c<<d));
}
}
System.out.println((4>>2));
System.out.println((4>>2<<2));
p(4>>2);
p(5>>2);
} private static void p( Object o ) {
System.out.println(o);
}}这2个输出都是1的,呵呵
4是100,5是101,位移后5的1会移米了
Integer.rotateRight(i, distance)