La clase Bitset también permite algunas de las operaciones lógicas en dos Bitsets. Las operaciones lógicas soportadas son: and, andNot, or, Xor. Estos se discuten en este artículo.
1. y (conjunto de bits): este método realiza un AND lógico de este conjunto de bits de destino con el conjunto de bits de argumento y devuelve los valores del primer conjunto de bits también presentes en el segundo conjunto de bits.
Declaration : public void and(BitSet set) Parameters : set : a bit set Return Value : This method does not return a value.
// Java code to demonstrate the working // of and(Bitset set) in Bitset import java.util.*; public class BitSetAnd { public static void main(String[] args) { // Declaring 2 bitsets BitSet bset1 = new BitSet(5); BitSet bset2 = new BitSet(5); // adding the values to bset1 // using set() bset1.set(0); bset1.set(1); bset1.set(2); bset1.set(3); // adding the values to bset2 // using set() bset2.set(2); bset2.set(4); bset2.set(6); bset2.set(0); // printing the initial sets System.out.println("The elements of Bitset 1 are : " + bset1); System.out.println("The elements of Bitset 2 are : " + bset2); // perform "and" operation between two bitsets // using and() bset1.and(bset2); // printing the new bset1 System.out.println("The resultant bset1 after and operation is : " + bset1); } }
Producción :
The elements of Bitset 1 are : {0, 1, 2, 3} The elements of Bitset 2 are : {0, 2, 4, 6} The resultant bset1 after and operation is : {0, 2}
2. andNot(BitSet set) : Este método realiza una NAND lógica y devuelve elementos del 1er Bitset que no están presentes en el argumento Bitset.
Declaration : public void andNot(BitSet set) Parameters : set: the BitSet with which to mask this BitSet. Return Value : This method does not return a value.
// Java code to demonstrate the working // of andNot(Bitset set) in Bitset import java.util.*; public class BitSetNotAnd { public static void main(String[] args) { // Declaring 2 bitsets BitSet bset1 = new BitSet(5); BitSet bset2 = new BitSet(5); // adding the values to bset1 // using set() bset1.set(0); bset1.set(1); bset1.set(2); bset1.set(3); // adding the values to bset2 // using set() bset2.set(2); bset2.set(4); bset2.set(6); bset2.set(0); // printing the initial sets System.out.println("The elements of Bitset 1 are : " + bset1); System.out.println("The elements of Bitset 2 are : " + bset2); // perform "not-and" operation between two bitsets // using andNot() bset1.andNot(bset2); // printing the new bset1 System.out.println("The resultant bset1 after andNot operation is : " + bset1); } }
Producción :
The elements of Bitset 1 are : {0, 1, 2, 3} The elements of Bitset 2 are : {0, 2, 4, 6} The resultant bset1 after andNot operation is : {1, 3}
3. o (conjunto de bits): este método realiza un OR lógico de este conjunto de bits de destino con el conjunto de bits de argumento y devuelve todos los valores presentes en ambos conjuntos de bits, no devuelve elementos duplicados.
Declaration : public void or(BitSet set) Parameters : set : a bit set Return Value : This method does not return a value.
// Java code to demonstrate the working // of or(Bitset set) in Bitset import java.util.*; public class BitSetOr { public static void main(String[] args) { // Declaring 2 bitsets BitSet bset1 = new BitSet(5); BitSet bset2 = new BitSet(5); // adding the values to bset1 // using set() bset1.set(0); bset1.set(1); bset1.set(2); bset1.set(3); // adding the values to bset2 // using set() bset2.set(2); bset2.set(4); bset2.set(6); bset2.set(0); // printing the initial sets System.out.println("The elements of Bitset 1 are : " + bset1); System.out.println("The elements of Bitset 2 are : " + bset2); // perform "or" operation between two bitsets // using or() bset1. or (bset2); // printing the new bset1 System.out.println("The resultant bset1 after or operation is : " + bset1); } }
Producción :
The elements of Bitset 1 are : {0, 1, 2, 3} The elements of Bitset 2 are : {0, 2, 4, 6} The resultant bset1 after or operation is : {0, 1, 2, 3, 4, 6}
4. xor(BitSet set) : este método realiza un XOR lógico y devuelve aquellos elementos que están presentes en un conjunto de bits pero no en otro .
Declaration : public void xor(BitSet set) Parameters : set a bit set. Return Value : This method does not return a value.
// Java code to demonstrate the working // of xor(Bitset set) in Bitset import java.util.*; public class BitSetXor { public static void main(String[] args) { // Declaring 2 bitsets BitSet bset1 = new BitSet(5); BitSet bset2 = new BitSet(5); // adding the values to bset1 // using set() bset1.set(0); bset1.set(1); bset1.set(2); bset1.set(3); // adding the values to bset2 // using set() bset2.set(2); bset2.set(4); bset2.set(6); bset2.set(0); // printing the initial sets System.out.println("The elements of Bitset 1 are : " + bset1); System.out.println("The elements of Bitset 2 are : " + bset2); // perform "xor" operation between two bitsets // using xor() bset1. xor (bset2); // printing the new bset1 System.out.println("The resultant bset1 after xor operation is : " + bset1); } }
Producción :
The elements of Bitset 1 are : {0, 1, 2, 3} The elements of Bitset 2 are : {0, 2, 4, 6} The resultant bset1 after xor operation is : {1, 3, 4, 6}
Este artículo es una contribución de Astha Tyagi . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA