C# | Establezca el bit en una posición específica en el BitArray al valor especificado – Part 1

La clase BitArray administra una array compacta de valores de bits, que se representan como valores booleanos, donde verdadero indica que el bit está activado , es decir, 1 y falso indica que el bit está desactivado , es decir, 0 . Esta clase está contenida en el espacio de nombres System.Collections .
El método BitArray.Set(Int32, Boolean) se usa para establecer el bit en una posición específica en el BitArray al valor especificado.

Propiedades:

  • La clase BitArray es una clase de colección en la que la capacidad es siempre la misma que la cuenta.
  • Los elementos se agregan a un BitArray aumentando la propiedad Longitud .
  • Los elementos se eliminan al disminuir la propiedad Longitud .
  • Se puede acceder a los elementos de esta colección mediante un índice entero. Los índices de esta colección están basados ​​en cero.

Sintaxis:

public void Set (int index, bool value);

Parámetros:

index : El índice basado en cero del bit a establecer.
value : el valor booleano que se asigna al bit.

Excepción: este método dará ArgumentOutOfRangeException si el índice es menor que cero o el índice es mayor o igual que la cantidad de elementos en el BitArray.

Nota: Este método es una operación O(1).

Los siguientes programas ilustran el uso del método BitArray.Set(Int32, Boolean) :

Ejemplo 1:

// C# code to set the bit at
// a specific position in the
// BitArray to the specified value
using System;
using System.Collections;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a BitArray myBitArr
        // Initializing all the values to false
        BitArray myBitArr = new BitArray(5, false);
  
        // Printing the values in myBitArr
        // It should display all the bits as false
        Console.WriteLine("Initially the bits are as : ");
  
        PrintIndexAndValues(myBitArr);
  
        // Setting bit at index 3 to true
        myBitArr.Set(3, true);
  
        // Printing the values in myBitArr
        Console.WriteLine("Finally the bits are as : ");
  
        PrintIndexAndValues(myBitArr);
    }
  
    // Function to display bits
    public static void PrintIndexAndValues(IEnumerable myArr)
    {
        foreach(Object obj in myArr)
        {
            Console.WriteLine(obj);
        }
    }
}
Producción:

Initially the bits are as : 
False
False
False
False
False
Finally the bits are as : 
False
False
False
True
False

Ejemplo 2:

// C# code to set the bit at
// a specific position in the
// BitArray to the specified value
using System;
using System.Collections;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a BitArray myBitArr
        BitArray myBitArr = new BitArray(5);
  
        // Initializing all the bits in myBitArr
        myBitArr[0] = false;
        myBitArr[1] = true;
        myBitArr[2] = true;
        myBitArr[3] = false;
        myBitArr[4] = true;
  
        // Printing the values in myBitArr
        Console.WriteLine("Initially the bits are as : ");
  
        PrintIndexAndValues(myBitArr);
  
        // Setting bit at index 2 to false
        myBitArr.Set(2, false);
  
        // Setting bit at index 3 to true
        myBitArr.Set(3, true);
  
        // Printing the values in myBitArr
        Console.WriteLine("Finally the bits are as : ");
  
        PrintIndexAndValues(myBitArr);
    }
  
    // Function to display bits
    public static void PrintIndexAndValues(IEnumerable myArr)
    {
        foreach(Object obj in myArr)
        {
            Console.WriteLine(obj);
        }
    }
}
Producción:

Initially the bits are as : 
False
True
True
False
True
Finally the bits are as : 
False
True
False
True
True

Referencia:

Publicación traducida automáticamente

Artículo escrito por Sahil_Bansall 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 *