Java实现乘法的方法——(三种)

更新时间:2023-05-21 12:49:44 阅读: 评论:0

Java实现乘法的⽅法——(三种)
最近在看⼀篇java的笔试题,⾥⾯要求⽤效率最⾼的⽅法求2*8,然后第⼀反应就是直接使⽤Java⾃带的乘法,然后发现其实还可以使⽤位运算符 “<<” 进⾏计算(如移了N位则乘了2的N次⽅)。所以我从中总结了三种⽅法来实现乘法的计算。希望对⼤家有帮助
⽅法1(直接相乘):
励志的成语大全该⽅法最直接:
// An highlighted block
公公的幻想
int d =2*8;
System.out.println(d);//d = 16
⽅法2(for循环相加):
此⽅法利⽤了乘法的原理,即使⽤多次使⽤加法进⾏叠加实完成的乘法效果:庄稼一枝花
// An highlighted block
int d =0;
for(int i =0; i <2; i++){
政务大厅d +=8;
}
System.out.println(d);//d = 16
⽅法3(使⽤位运算符):
此⽅法使⽤位运算符进⾏计算,直接操作机器⼆进制数,效率最⾼
煤矿安全生产标语// An highlighted block
int d =2<<3;
System.out.println(d);//d = 16清蒸鳕鱼
出于好奇,我⼜在此⽅法基础上造了⼀个使⽤位运算+java⾃带乘法计算的⽅法来实现乘法(⽬前不知道会不会⽐java⾃带的快0 - 0)代码如下:
// An highlighted block
// 乘法:使⽤到位运算
public static void mul(int a,int b){
int i =1;
//调换位置
if(a > b){小苹果铃声
int z = a;
a = b;
b = z;
}
while((b -(2<< i))>0){
i++;
就业渠道}
int res =(a << i)+ a *(b -(2<<(i -1)));
System.out.println(res);
}

本文发布于:2023-05-21 12:49:44,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/719681.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:乘法   计算   实现   进制   叠加
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图