我正在尝试从整数值初始化System.BitArray实例。但是,似乎我没有获得正确的值。
我的代码是
var b = new BitArray(BitConverter.GetBytes(0xfa2));
for (int i = 0; i < b.Count; i++)
{
char c = b[i] ? '1' : '0';
Console.Write(c);
}
Console.WriteLine();
我也尝试过没有BitConverter:
var b = new BitArray(new int[] { 0xfa2 });
但是这些尝试似乎都不起作用。这些是在此处建议的尝试:Convert int to a bit array in .NET
我的输出:01000101111100000000000000000000。
预期的输出:111110100010。
任何帮助将不胜感激!
最佳答案
您从错误的方向循环。尝试这个:
var b = new BitArray(BitConverter.GetBytes(0xfa2));
for (int i = b.Count-1; i >= 0; i--)
{
char c = b[i] ? '1' : '0';
Console.Write(c);
}
Console.WriteLine();
关于c# - 从整数初始化BitArray,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25573653/