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

public class Solution{
    public int Add(int num1,int num2) {
        int result;
        int ans;
        do{
            result = num1 ^ num2;//求异或,即各位值
            ans = (num1 & num2) << 1;//求与再进1位,即进位值
            num1 = result;
            num2 = ans;//重复前两步
        }while(ans!=0);//直到进位为0,结束
        return result;
    }
}
/*无进位和运算就是按位异或结果,进位就是与运算结果但是需要左移一位,因为进位影响下一位的运算。
所以s = a + b,其实就是无进位和+进位的结果。*/