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

La propiedad BitArray.Item[Int32] se usa para obtener o establecer el valor del bit en una posición específica en BitArray .

Sintaxis:

public bool this[int index] { get; set; }

Aquí, el índice es el índice de base cero del valor que se va a obtener o establecer.

Valor de retorno: Devuelve un valor booleano del bit en el índice de posición .

Excepción: esta propiedad genera ArgumentOutOfRangeException si el índice es menor que cero o el índice es igual o mayor que Count .

Los siguientes programas ilustran el uso de la propiedad discutida anteriormente:

Ejemplo 1:

// C# program to illustrate the
// BitArray.Item[Int32] Property
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);
  
        // after using item[int32] property
        // changing the bit value of index 2
        myBitArr[2] = false;
  
        // 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
False
True

Ejemplo 2:

// C# program to illustrate the
// BitArray.Item[Int32] Property
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] = true;
        myBitArr[1] = false;
        myBitArr[2] = false;
        myBitArr[3] = false;
        myBitArr[4] = true;
  
        // after using item[int32] property
        // it will give run time error as
        // index is less than zero
        myBitArr[-1] = false;
  
        PrintIndexAndValues(myBitArr);
    }
  
    // Function to display bits
    public static void PrintIndexAndValues(IEnumerable myArr)
    {
        foreach(Object obj in myArr)
        {
            Console.WriteLine(obj);
        }
    }
}

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: Recuperar y establecer el valor de esta propiedad es una operación O(1).

Referencia:

Publicación traducida automáticamente

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