面试题:怎么以最快速度计算8*4:

我们第一想法肯定是直接乘除,但显然这不是面试官想要的答案。这是就用到了我们所学的位运算符:

<<(左移):计算乘法

>>(右移):计算除法

代码演示:

1.左移算法:位移数作为2的次幂与操作数相乘: 例计算8*4


  public static void main(String[] args) {
        // 8 * 4 ,4为2的2次方,故左移两位
        System.out.println(8 << 2);// 32
    }

2.右移算法:操作数除以位移数的二次幂: 例计算8/4:

public static void main(String[] args) {
        // 8 / 4 ,4为2的2次方,故右移两位
        System.out.println(8 >> 2);// 2
    }
posted @ 2021-06-23 08:02  JamieChyi  阅读(31)  评论(0)    收藏  举报  来源