A BitArray is a collection of Boolean values represented as a series of 1's and 0's. It is often used to store and manipulate binary data efficiently. In C#, the ##BitArray, the ##BitArray, the # class is part of the System. Collections namespace, and it allows you to manipulate the individual bits in the array using bitwise operators.
反轉位數組中的所有位元值Example 1
步驟 1 - 建立一個新的 BitArray 來儲存反轉的值。
步驟 2 - 迴圈遍歷原始 BitArray 中的每個位元。
步驟 3 − 使用位元求反運算子(~)反轉每個位元的值。
步驟 4 - 將反轉的值儲存在新的 BitArray 中。
第5步 - 傳回新的BitArray。
using System; using System.Collections; class Program{ static void Main(string[] args){ // Create a new BitArray with some initial values BitArray bits = new BitArray(new[] { true, false, true, false }); // Invert all the bit values using XOR with 1 for (int i = 0; i < bits.Length; i++){ bits[i] ^= true; } // Print the inverted bit values for (int i = 0; i < bits.Length; i++){ Console.Write(bits[i] ? "1" : "0"); } Console.ReadLine(); } }輸出
0101Example 2
演算法
Step 1 − Create a BitArray object with the desired size.
#第二步 - 循環遍歷BitArray中的每個索引。
步驟 3 - 使用 BitArray.Set 方法將目前索引處的值取反,參數為索引和目前索引的取反值。
using System; using System.Collections; class Program { static void Main(string[] args) { int size = 8; BitArray bits = new BitArray(size); for (int i = 0; i < size; i++) { bits[i] = (i % 2 == 0); } Console.WriteLine("Before inversion:"); PrintBits(bits); InvertBits(bits); Console.WriteLine("After inversion:"); PrintBits(bits); } static void InvertBits(BitArray bits) { for (int i = 0; i < bits.Count; i++) { bits.Set(i, !bits[i]); } } static void PrintBits(BitArray bits) { for (int i = 0; i < bits.Count; i++) { Console.Write(bits[i] ? "1" : "0"); } Console.WriteLine(); } }輸出
Before inversion: 01010101 After inversion: 10101010
以上是在C#中將BitArray中的所有位元值取反的詳細內容。更多資訊請關注PHP中文網其他相關文章!