The BitArray class manages a compact array of bit values represented as Boolean values, where true means the bit is on (1) and false means the bit is off (0).
The following table lists some common methods of the BitArray class-
Sr.No. | Methods and descriptions |
---|---|
1 |
public BitArray And(BitArray value); Combine the elements in the current BitArray with the specified BitArray Perform a bitwise AND operation on the corresponding elements in . |
2 |
public bool Get(int index); p> Get a specific position in BitArray The value of the bit. |
3 |
public BitArray Not(); Reverse all the bits in the current BitArray A bit value that causes elements set to true to change to false, and elements set to false to change to true. |
4 |
public BitArray Or(BitArray value); Change the current BitArray The elements are bitwise ORed with the corresponding elements in the specified BitArray. td> |
5 |
public void Set(int index, bool value); p> Convert BitArray Sets a bit at a specific location in the . |
6 |
public void SetAll(bool value); Set all the values in BitArray Bit is set to the specified value. |
7 |
public BitArray Xor(BitArray value); Change the current BitArray Performs a bitwise exclusive OR operation on the element with the corresponding element in the specified BitArray. |
Now let’s see an example-
Live Demonstration
using System; using System.Collections; public class Demo { public static void Main(){ BitArray arr1 = new BitArray(2); BitArray arr2 = new BitArray(2); arr1[0] = false; arr1[1] = true; Console.WriteLine("Elements in BitArray1..."); foreach (bool res in arr1){ Console.WriteLine(res); } arr2[0] = false; arr2[1] = true; Console.WriteLine("Elements in BitArray2..."); foreach (bool res in arr2){ Console.WriteLine(res); } Console.WriteLine("Is BitArray1 equal to BitArray2? = "+arr2.Equals(arr1)); Console.WriteLine("Is BitArray synchronized? = "+arr2.IsSynchronized); Console.WriteLine("Is BitArray read-only? = "+arr2.IsReadOnly); } }
This will produce the following output-
Elements in BitArray1... False True Elements in BitArray2... False True Is BitArray1 equal to BitArray2? = False Is BitArray synchronized? = False Is BitArray read-only? = False
Let us see another example of implementing bitwise XOR operation between BitArray elements-
Live Demo
using System; using System.Collections; public class Demo { public static void Main(){ BitArray arr1 = new BitArray(5); BitArray arr2 = new BitArray(5); arr1[0] = false; arr1[1] = false; arr2[0] = false; arr2[1] = true; Console.WriteLine("BitArray1 elements..."); foreach (bool res in arr1){ Console.WriteLine(res); } Console.WriteLine("BitArray2 elements..."); foreach (bool res in arr2){ Console.WriteLine(res); } Console.WriteLine("Bitwise exclusive OR operation..."); IEnumerable demoEnum = arr1.Xor(arr2); foreach(Object ob in demoEnum){ Console.WriteLine(ob); } } }
This will produce the following output-
BitArray1 elements... False False False False False BitArray2 elements... False True False False False Bitwise exclusive OR operation... False True False False False
The above is the detailed content of BitArray class in C#. For more information, please follow other related articles on the PHP Chinese website!