Java中的BigInteger andNot()方法

这个 JAVA数学大整数。andNot(大整数val) 方法返回一个BigInteger,其值为(this&~val),其中 到使用该函数的当前BigInteger,然后 瓦尔 是作为参数传递给函数的bigInteger。此方法相当于and(val.not()),是为了方便掩蔽操作而提供的。当且仅当该值为负且val为正时,此方法返回负的BigInteger。andNOT()方法对作为参数传递的当前bigInteger而非bigInteger的值应用按位AND运算。

语法:

public BigInteger andNot(BigInteger val)

参数: 该方法接受一个参数 瓦尔 BigInteger类型,是指需要用当前BigInteger进行补码和与运算的值。

返回值: 该方法用于返回(this&~val),其中 到使用该函数的当前BigInteger,然后 瓦尔 是作为参数传递给函数的bigInteger。

例如:

Input: value1 = 2300, value2 = 3400
Output: 180
Explanation:
Binary of 2300 = 100011111100
Not of 3400 in binary signed 2's complement is 1111001010110111
AND of 100011111100 and 1111001010110111= 10110100
Decimal of 10110100 = 180.

Input: value1 = 432045, value2 = 321076
Output: 135561

下面的程序演示了BigInteger的andNot()方法。

/*
*Program Demonstrate notNot() method of BigInteger
*/
import java.math.*;
public class GFG {
public static void main(String[] args)
{
// Create 2 BigInteger objects
BigInteger biginteger = new BigInteger( "2300" );
BigInteger val = new BigInteger( "3400" );
// Call andNot() method to find this & ~val
BigInteger finalvalue = biginteger.andNot(val);
String result = "Result of andNot operation between " +
biginteger + " and " + val + " is " + finalvalue;
// Print the result
System.out.println(result);
}
}


输出:

Result of andNot operation between 2300 and 3400 is 180

参考: https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html#andNot(java.math.biginger)

© 版权声明
THE END
喜欢就支持一下吧,技术咨询可以联系QQ407933975
点赞7 分享