Java Language Opérations de logique binaire sur BigInteger


Exemple

BigInteger prend également en charge les opérations logiques binaires disponibles pour les types Number . Comme pour toutes les opérations, elles sont implémentées en appelant une méthode.

Binaire ou:

BigInteger val1 = new BigInteger("10");
BigInteger val2 = new BigInteger("9");

val1.or(val2);

Sortie: 11 (ce qui équivaut à 10 | 9 )

Binaire Et:

BigInteger val1 = new BigInteger("10");
BigInteger val2 = new BigInteger("9");

val1.and(val2);

Sortie: 8 (ce qui équivaut à 10 & 9 )

Binaire Xor:

BigInteger val1 = new BigInteger("10");
BigInteger val2 = new BigInteger("9");

val1.xor(val2);

Sortie: 3 (ce qui équivaut à 10 ^ 9 )

RightShift:

BigInteger val1 = new BigInteger("10");

val1.shiftRight(1);   // the argument be an Integer    

Sortie: 5 (équivalent à 10 >> 1 )

Décalage à gauche:

BigInteger val1 = new BigInteger("10");

val1.shiftLeft(1);   // here parameter should be Integer    

Sortie: 20 (équivalent à 10 << 1 )

Inversion binaire (non):

BigInteger val1 = new BigInteger("10");

val1.not();

Sortie: 5

NAND (And-Not): *

BigInteger val1 = new BigInteger("10");
BigInteger val2 = new BigInteger("9");

val1.andNot(val2);

Sortie: 7