黑马程序员技术交流社区

标题: 2乘17的有效算法? [打印本页]

作者: Running    时间: 2014-6-21 17:07
标题: 2乘17的有效算法?
用有效算法算出2乘17等于多少?
class JiSuan
{
    public static void main(String[] args)
    {
      System.out.println(2<<4+2);   //将2左移4为,再加上2
    }
}


为什么输出结果会是128呢?请问程序那里出现了问题???
作者: luojunwei1992    时间: 2014-6-21 17:35
加号优先级高于<<,先进行的是加法运算,加个括号就好了
作者: Running    时间: 2014-6-22 15:22
luojunwei1992 发表于 2014-6-21 17:35
加号优先级高于

哦哦哦,对对。
作者: jiang_ming    时间: 2014-6-22 16:02
加号优先级的问题,学习了
作者: ╰繼/aiq戀い    时间: 2014-6-22 17:57
先运行2<<4,再在此基础上加2,加个括号就OK了
作者: 波涛    时间: 2014-6-22 20:14
同样也学习了!原来加号优先级高于移位操作符。
作者: qincai    时间: 2014-6-22 23:37
luojunwei1992 发表于 2014-6-21 17:35
加号优先级高于

+1,原来是这样
作者: idency    时间: 2014-6-22 23:46
  1. public class Demo {
  2.         public static void main(String[] args) {
  3.                 System.out.println(17<<1);
  4.         }
  5. }
复制代码

作者: 小夜    时间: 2014-6-23 00:32
学习了。。。。
作者: _qishiwobusha_    时间: 2014-6-23 01:31
受教了。。。。
作者: 李亚西    时间: 2014-6-23 05:04
学习了。。
作者: liletian2104    时间: 2014-6-23 07:36
学习了,运算符优先级问题




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