劍指offer---不用加減乘除做加法(Java)

題目描述

寫一個函數,求兩個整數之和,要求在函數體內不得使用+、-、*、/四則運算符號。

解析思路

我們先回顧一下異或 ^ 運算和&與運算。
異或^:不同的數異或爲1,相同的數異或爲0。
與&:兩者都爲1,結果爲1,其他都爲0。
在這裏插入圖片描述

運行代碼

public class Solution {
    public int Add(int num1,int num2) {
        int temp1 = num1 ^ num2;
        int temp2 = (num1 & num2) << 1;
        int sum = temp1 + temp2;
        return sum;
    }
}

運行截圖

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章