JAVA之中<<=是什么意思?

如题所述

楼主你好,我给你一个例子,你就懂了

编程题: 用最有效率的方法算出2乘以8等於几?
答案:2 << 3,
因为将一个数左移n位,就相当于乘以了2的n次方,那么,一个数乘以8只要将其左移3位即可,而位运算cpu直接支持的,效率最高,所以,2乘以8等於几的最效率的方法是2 << 3。

比如:a<<=b,意思就是a = a*(2的b次方)
如:public static void main(String[] args) {
int sum = 2;
int a = 4;

sum <<= a;
System.out.println(sum);
}
输出的就是 32

希望可以帮助到你
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-03
int a = 1;
a<<=1;
System.out.println(a);
a=1;
a=a<<1;
System.out.println(a);
一个意思,<<向左移位运算符,明白了吧
第2个回答  2011-04-03
这是java的一个复合运算符
比如说:
int a = 1;
a<<=3;//代表a的32位向左移动3位,然后再将得到的数赋值给a
至于移位的相关知识,你可以搜索java位操作符
相似回答