C# | Enumerator that iterates through the BitArray (original) (raw)
Last Updated : 01 Feb, 2019
The BitArray class manages a compact array of bit values, which are represented as Booleans, where true indicates that the bit is on i.e, 1 and false indicates the bit is off i.e, 0. This class is contained in System.Collections namespace. BitArray.GetEnumerator method is used to get an enumerator which iterates through the BitArray. Properties:
- The BitArray class is a collection class in which the capacity is always the same as the count.
- Elements are added to a BitArray by increasing the Length property.
- Elements are deleted by decreasing the Length property.
- The BitArray class provides methods like And, Or, Xor, Not, and SetAll.
- Elements in this collection can be accessed using an integer index. Indexes in this collection are zero-based.
Syntax:
public System.Collections.IEnumerator GetEnumerator ();
Return Value: This method returns an IEnumerator for the entire BitArray. Below programs illustrate the use of BitArray.GetEnumerator Method: Example 1:
CSHARP `
// C# code to return an enumerator // that iterates through the BitArray using System; using System.Collections;
class GFG {
// Driver code
public static void Main()
{
// Creating a BitArray myBitArr
// Initializing all the values to true
BitArray myBitArr = new BitArray(5, true);
// Function calling
PrintIndexAndValues(myBitArr);
}
// Function to display bits
public static void PrintIndexAndValues(IEnumerable myArr)
{
foreach(Object obj in myArr)
{
Console.WriteLine(obj);
}
}
}
`
Output:
True True True True True
Example 2:
CSHARP `
// C# code to return an enumerator // that iterates through the BitArray 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;
// Function calling
PrintIndexAndValues(myBitArr);
}
// Function to display bits
public static void PrintIndexAndValues(IEnumerable myArr)
{
foreach(Object obj in myArr)
{
Console.WriteLine(obj);
}
}
}
`
Output:
False True True False True
Note:
- The foreach statement of the C# language hides the complexity of the enumerators. Therefore, using foreach is recommended, instead of directly manipulating the enumerator.
- Enumerators can be used to read the data in the collection, but they cannot be used to modify the underlying collection.
- An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and its behavior is undefined.
- This method is an O(1) operation.
Reference:
Similar Reads
- C# | Array.GetEnumerator Method This method is used to return an IEnumerator for the Array. Syntax: public System.Collections.IEnumerator GetEnumerator (); Return Value: This method returns an IEnumerator for the Array. Below programs illustrate the use of Array.GetEnumerator Method: Example 1: CSHARP // C# program to demonstrate 2 min read
- C# | Get or set the number of elements in the BitArray The BitArray class manages a compact array of bit values, which are represented as Booleans, where true indicates that the bit is on i.e, 1 and false indicates the bit is off i.e, 0. This class is contained in System.Collections namespace. BitArray.Length property is used to get or set the number of 2 min read
- BitArray.LeftShift() Method in C# with Examples BitArray class manages a array of bit values, which are represented as Booleans, where true indicates bit is 1 and false indicates bit is 0. This class is contained in namespace, System.Collections. BitArray.LeftShift(Int32) method is used to shift the bits of the bit array to the left by one positi 2 min read
- BitArray.RightShift() Method in C# with Examples BitArray class manages a array of bit values, which are represented as Booleans, where true indicates bit is 1 and false indicates bit is 0. This class is contained in namespace, System.Collections. BitArray.RightShift(Int32) method is used to shift the bits of the bit array to the right by one posi 2 min read
- C# | Getting an enumerator for the entire ArrayList ArrayList.GetEnumerator Method is used to get an enumerator for the entire ArrayList. Syntax: public virtual System.Collections.IEnumerator GetEnumerator (); Return Value: It returns an IEnumerator for the entire ArrayList. Below programs illustrate the use of above-discussed method: Example 1: CSha 2 min read
- C# | Set all bits in the BitArray to the specified value The BitArray class manages a compact array of bit values, which are represented as Booleans, where true indicates that the bit is on i.e, 1 and false indicates the bit is off i.e, 0. This class is contained in System.Collections namespace. BitArray.SetAll(Boolean) method is used to set all bits in t 3 min read
- C# | Gets or sets the value of the bit at a specific position in the BitArray BitArray.Item[Int32] Property is used to get or set the value of the bit at a specific position in the BitArray. Syntax: public bool this[int index] { get; set; } Here, the index is the zero-based Index of the value which is to get or set. Return Value: It returns a boolean value of the bit at posit 2 min read
- C# | Check if the BitArray is synchronized (thread safe) The BitArray class manages a compact array of bit values, which are represented as Booleans, where true indicates that the bit is on i.e, 1 and false indicates the bit is off i.e, 0. This class is contained in System.Collections namespace. BitArray.IsSynchronized property is used to get a value indi 2 min read
- C# | Number of elements contained in the BitArray The BitArray class manages a compact array of bit values, which are represented as Booleans, where true indicates that the bit is on i.e, 1 and false indicates the bit is off i.e, 0. This class is contained in System.Collections namespace. BitArray.Count property is used to get the number of element 2 min read
- C# | Set the bit at a specific position in the BitArray to the specified value The BitArray class manages a compact array of bit values, which are represented as Booleans, where true indicates that the bit is on i.e, 1 and false indicates the bit is off i.e, 0. This class is contained in System.Collections namespace. BitArray.Set(Int32, Boolean) method is used to set the bit a 3 min read