写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。
分析
学了忘,忘了学
二进制可以通过 异或 和 与 运算进行加法运算
代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| public class Solution { public int Add(int num1,int num2) { int target = num1 ^ num2, carry = (num1 & num2) << 1; while( carry != 0 ){ target = num1 ^ num2; carry = (num1 & num2) << 1;
num1 = target; num2 = carry; }
return target; } }
|