阅读量:0
在C#中,没有内置的BitSet类,但是你可以使用BitArray
类来执行位运算
- 导入
System.Collections
命名空间。 - 创建一个
BitArray
实例。 - 使用
BitArray
的方法和属性执行位运算。
下面是一个简单的示例,展示了如何使用BitArray
进行位运算:
using System; using System.Collections; class BitSetExample { static void Main() { // 创建两个BitArray实例 BitArray bitArray1 = new BitArray(new byte[] { 0b11001100 }); BitArray bitArray2 = new BitArray(new byte[] { 0b10101010 }); // 打印原始BitArray Console.WriteLine("BitArray1: " + ToBinaryString(bitArray1)); Console.WriteLine("BitArray2: " + ToBinaryString(bitArray2)); // 执行按位与运算 bitArray1.And(bitArray2); Console.WriteLine("BitArray1 AND BitArray2: " + ToBinaryString(bitArray1)); // 执行按位或运算 bitArray1.Or(bitArray2); Console.WriteLine("BitArray1 OR BitArray2: " + ToBinaryString(bitArray1)); // 执行按位异或运算 bitArray1.Xor(bitArray2); Console.WriteLine("BitArray1 XOR BitArray2: " + ToBinaryString(bitArray1)); // 执行按位非运算 bitArray1.Not(); Console.WriteLine("NOT BitArray1: " + ToBinaryString(bitArray1)); } // 将BitArray转换为二进制字符串 static string ToBinaryString(BitArray bitArray) { StringBuilder sb = new StringBuilder(); foreach (bool bit in bitArray) { sb.Append(bit ? '1' : '0'); } return sb.ToString(); } }
这个示例首先创建了两个BitArray
实例,然后执行了按位与、按位或、按位异或和按位非运算。最后,使用ToBinaryString
方法将BitArray
转换为二进制字符串,以便于查看结果。