编程语言
首页 > 编程语言> > c#-定长位数组的数组

c#-定长位数组的数组

作者:互联网

我遇到了BitArray的麻烦.

目标是模拟8个80位BitArray的堆栈,编号为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);

标签:bitarray,initialization,arrays,c,net
来源: https://codeday.me/bug/20191023/1914803.html