我遇到了 BitArray
的问题。
目标是模拟 8 个 80bit BitArrays 的堆栈,编号从 0 到 7。
我只需要能够通过索引访问它们,所以我认为一个简单的数组对我来说就足够了。
当初始化一个 BitArray
对象时,我需要指定它将包含的位数,这给了我
BitArray test = new BitArray(80);
在知道我需要指定长度值的情况下,如何做一个数组?
我试过很多东西,比如
BitArray[] stack = new BitArray(80)[];
但我在尝试给它指定长度时总是出错...
有什么想法吗?
提前致谢
最佳答案
不幸的是,据我所知,该框架似乎没有“规范的”数组初始化模式。
使用 LINQ 的一种方法是:
var stack = Enumerable.Range(0, 8)
.Select(i => new BitArray(80))
.ToArray();
或:
var stack = Enumerable.Repeat<Func<BitArray>>( () => new BitArray(80), 8)
.Select(f => f())
.ToArray();
或者,
BitArray[] stack = new BitArray[8];
for(int i = 0; i < stack.Length; i++)
stack[i] = new BitArray(80);
关于c# - 固定长度的 BitArrays 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4322488/