黑马程序员技术交流社区

标题: 用最有效率的方法算出2乘以8等於几? [打印本页]

作者: 张会文    时间: 2012-12-30 20:40
标题: 用最有效率的方法算出2乘以8等於几?
这个最有效的方式指得是什么意思?
我的方法是:public class Test1 {
public static void main(String[] args) {
  System.out.println("2*8="+2*8);
}
}
不知道对不对?请指教?
作者: 马志军    时间: 2012-12-30 20:46
本帖最后由 马志军 于 2012-12-30 20:49 编辑

System.out.println(2<<3);
作者: 马志军    时间: 2012-12-30 20:50
搞错了,应该左移
作者: jsfjb    时间: 2012-12-30 20:54
最有效率的就要说位的运算了。
2*8
可以看成
2*2*2*2
2的3次方
也就是2左移3位,
写成:2<<3;

作者: 王玮    时间: 2012-12-30 21:04
8>>1     这样就行了  位移操作 最快

作者: 冉世友    时间: 2012-12-30 21:49
本帖最后由 冉世友 于 2012-12-30 21:51 编辑

位移运算最快的,是最有效率的,用 2 << 3.
作者: 谢毅    时间: 2012-12-30 22:16
2的二进制0000-0000 0000-0000 0000-0000 0000-0010  左移3位 图如下:
              0000-0000 0000-0000 0000-0000 0000-0010
         0000-0000 0000-0000 0000-0000 0000-0010   
----------------------------------------------------------------------------------
              0000-0000 0000-0000 0000-0000 0001-0000
1*2(4)=16

作者: 王玮    时间: 2012-12-30 22:29
王玮 发表于 2012-12-30 21:04
8>>1     这样就行了  位移操作 最快

。。。汗。。8<<1  这样就行了   左移 就是 乘2 ,8*2=16
2<<3     左移三位 也是 2*2*2*2=16




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2