本帖最后由 刘艳伟 于 2012-11-15 11:08 编辑
移位能为我们实现整数除以或乘以2的n次方的效果,如x>>1=x/2,x<<2=x*4。总之,一个数左移n位,就是等于这个数乘以2的n次方,一个数右移n位,就是等于这个数除以2的n次方。
注:移位不会改变变量本身的值。如a>>1;在一行语句中单独存在,毫无意义,因为它没有改变a的值,也没有把它赋值给别的变量。如下例所示
public class Trad{
public static void main(String[] args) {
int a=3;
System.out.println(a<<2);//输出结果为12
System.out.println(a);//输出结果为3
}
}
|