我有这个BitArray:
BitArray bits = new BitArray(2);
bits[0] = false;
bits[1] = true;
代表:10b
- > 2
让我们看看它的价值:
int[] array = new int[1];
bits.CopyTo(array, 0);
Console.WriteLine(array[0]); // value=2
大
现在我将第一个代码更改为:
bool[] bits = new bool[2] { false, true }; //same value !
BitArray myBA4 = new BitArray( bits );
//and again...
int[] array = new int[1];
bits.CopyTo(array, 0);
Console.WriteLine(array[0]);
问题
我的错误在哪里?我认为应该是相同的结果。
答案 0 :(得分:2)
bool[] bits = new bool[2] { false, true };
分配一个包含两个元素的数组,CopyTo
应该逐个复制它们。它不能成功,因为
bool
无法隐式转换为int
。