C# | Obtenga el valor del bit en una posición específica en BitArray

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.Get(Int32) se usa para obtener el valor del bit en una posición específica en BitArray.

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 bool Get (int index);

Aquí, index es el índice de base cero del valor a obtener.

Valor devuelto: Devuelve el valor del bit en el índice de posición.

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.

A continuación se dan algunos ejemplos para entender la implementación de una mejor manera:

Ejemplo 1:

// C# code to get the value of
// the bit at a specific position
// in the BitArray
using System;
using System.Collections;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a BitArray
        BitArray myBitArr = new BitArray(5);
  
        myBitArr[0] = true;
        myBitArr[1] = true;
        myBitArr[2] = false;
        myBitArr[3] = true;
        myBitArr[4] = false;
  
        // To get the value of index at index 2
        Console.WriteLine(myBitArr.Get(2));
  
        // To get the value of index at index 3
        Console.WriteLine(myBitArr.Get(3));
    }
}

Producción:

False
True

Ejemplo 2:

// C# code to get the value of
// the bit at a specific position
// in the BitArray
using System;
using System.Collections;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a BitArray
        BitArray myBitArr = new BitArray(5);
  
        myBitArr[0] = true;
        myBitArr[1] = true;
        myBitArr[2] = false;
        myBitArr[3] = true;
        myBitArr[4] = false;
  
        // To get the value of index at index 6
        // This should raise "ArgumentOutOfRangeException"
        // as index is greater than or equal to
        // the number of elements in the BitArray.
        Console.WriteLine(myBitArr.Get(6));
    }
}

Error de tiempo de ejecución:

Excepción no controlada:
System.ArgumentOutOfRangeException: el índice estaba fuera de rango. Debe ser no negativo y menor que el tamaño de la colección.
Nombre del parámetro: índice

Ejemplo 3:

// C# code to get the value of
// the bit at a specific position
// in the BitArray
using System;
using System.Collections;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a BitArray
        BitArray myBitArr = new BitArray(5);
  
        myBitArr[0] = true;
        myBitArr[1] = true;
        myBitArr[2] = false;
        myBitArr[3] = true;
        myBitArr[4] = false;
  
        // To get the value of index at index -2
        // This should raise "ArgumentOutOfRangeException"
        // as index is less than zero.
        Console.WriteLine(myBitArr.Get(-2));
    }
}

Error de tiempo de ejecución:

Excepción no controlada:
System.ArgumentOutOfRangeException: el índice estaba fuera de rango. Debe ser no negativo y menor que el tamaño de la colección.
Nombre del parámetro: índice

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

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 *