説明
bigパッケージで値の論理積と否定(AndNot)をとるにはAndNot()を使います。パラメーターにはInt型の整数値を2つ指定します。2番目の値のNOT(否定)をとった後で最初のパラメーターの値との論理積をとります。AndNot()の戻り値はInt型になります。論理積は数値をビットにした際、ビットが1の場合だけ1になり、それ以外の場合は0になります。否定は1なら0、0なら1になります。
package main
import (
"fmt"
"math/big"
)
func main() {
n1 := big.NewInt(15)
n2 := big.NewInt(1)
total := new(big.Int).AndNot(n1, n2)
fmt.Println(total)
}
実行結果