如何使用移位操作来实现乘法运算

       把一个数向左移动n位相当于把该数乘以2的n次方,因此当乘法运算中的某个数字满足这个特点时,就可以用移位操作来代替乘法操作,从而提高效率

演示代码如下:

/**
 * @author 阿水
 * @create 2023-04-15 15:45
 * 把一个数向左移动n位相当于把该数乘以2的n次方,因此当乘法运算中的某个数字满足这个特点时,就可以用移位操作来代替乘法操作,从而提高效率。
 */
public class TheShiftOperationImplementsMultiplication {
    public static int multiplication(int m, int n) {
        //在绝大多数编程语言中,如果if、for、while等语句的内容中仅有一条语句,可以省略花括号。
        //注意:是一条语句,不是一行。
        for (int i = 0; i < n; i++) m = m << 1;

        return m;
    }

    public static void main(String[] args) {
        //2的零次方为1、 2的一次方为2、 2的二次方为4、 2的三次方为8、 2的四次方为16
        //以此类推
        System.out.println("4乘以16为:" + multiplication(4, 4));
        System.out.println("4乘以32为:" + multiplication(4, 5));
    }
}

程序运行结果如下:

4乘以16为:64
4乘以32为:128

猜你喜欢

转载自blog.csdn.net/lps12345666/article/details/130171358