在C#中,沒有內置的BitSet類,但是可以使用BitArray類來實現類似的功能
using System.Collections;
int size = 10; // 定義BitArray的大小
BitArray bitArray = new BitArray(size);
bitArray[0] = true; // 設置第0位為true
bool value = bitArray[0]; // 獲取第0位的值
foreach (bool bit in bitArray)
{
Console.WriteLine(bit);
}
bitArray.SetAll(true); // 將所有位設置為true
int length = bitArray.Length;
BitArray bitArrayCopy = new BitArray(bitArray);
BitArray anotherBitArray = new BitArray(size);
anotherBitArray[0] = true;
// 按位與
BitArray andResult = bitArray.And(anotherBitArray);
// 按位或
BitArray orResult = bitArray.Or(anotherBitArray);
// 按位異或
BitArray xorResult = bitArray.Xor(anotherBitArray);
// 按位非
BitArray notResult = bitArray.Not();
如果你需要更多的功能或者更好的性能,可以考慮使用第三方庫,例如System.Collections.Specialized.BitVector32
或者System.Numerics.BigInteger
。這些庫提供了更豐富的功能和更高的性能。