Clase Java.util.Bitset | Operaciones lógicas

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *