题目

写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。

题解

用位运算模拟加法的三步:

  • 无进位加法:异或运算。
  • 进位:与运算再左移一位。
  • 直到进位为0结束。

代码

public class Main {
public static void main(String[] args) {
System.out.println(Add(5,17));
}
public static int Add(int num1,int num2) {
int sum=0;
int carry=0;
do {
sum=num1^num2;
carry=(num1&num2)<<1;
num1=sum;
num2=carry;
}while(carry!=0);
return sum;
}
}

最新文章

  1. Web自动化基础(一)使用Selenium定位元素
  2. pom.xml详解
  3. ACA烤箱菜单各项温度
  4. 【leetcode】N-Queens II
  5. [译]JavaScript中,{}+{}等于多少?
  6. Lubuntu下配置Python开发环境
  7. [Flex] IFrame系列 —— IFrame嵌入html点击其他组件后页面消失的问题
  8. Data Base sqlServer DataReader与DataSet的区别
  9. main函数是个什么东西
  10. 在含有null值的复杂类的集合(Collection)中取最大值
  11. Win7/Win8.1预订升级Win10失败临时解决方案
  12. kinect for windows - 手势识别之一,C++实现
  13. linux--关于shell的介绍
  14. Centos 7系统启动修复
  15. FLAnimatedImage -ios gif图片加载框架介绍
  16. Linux共享库、静态库、动态库详解
  17. GateOne Web SSH 环境搭建
  18. Xamarin Android ListView 控件使用
  19. springboot单元测试 注入失败 空指针
  20. 一步步教你轻松学朴素贝叶斯模型算法Sklearn深度篇3

热门文章

  1. 题解 BZOJ4709
  2. Url跳转漏洞常见
  3. mac下protobuf配置记录
  4. Spring编程式注解使用不当导致其他事务无法正常提交
  5. Prometheus监控神器-Alertmanager篇(4)
  6. 图解 K8s 核心概念和术语
  7. 渲染更换头像 文件转成url地址
  8. oracle之回顾二
  9. 专为seo新手准备的百度分享工具教程
  10. Vue基础(五)---- 前端路由