进位值与非进位值一直异或,直至进位值为0结束。

public class Solution {
    public int Add(int num1,int num2) {
         while(num2!=0){//当进位为0时加法完成
             int temp = num1^num2;//先查看非进位值
             num2 = (num1&num2)<<1;//再查看进位值
             num1 = temp;
         }   
         return num1;
    }
}