c# - 固定长度的 BitArrays 数组

标签 c# .net arrays initialization bitarray

我遇到了 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/

相关文章:

c# - 在 Parallel.ForEach 中向字典添加值

c# - FFI 的 size_t 兼容类型

c# - 比较 IP 地址,如果它低于另一个

c# - 将 '\n' 而不是 '\\n' 拆分为字符串数组

javascript - typescript 索引获取/设置

c# - 将第 3 方 API 调用转换为异步

c# - 嵌套 INotifyPropertyChanged 类不起作用

c# - 如何在 .NET 中抛出的异常的 StackTrace 中获取行号以显示

arrays - 检查数组中的一个元素是否包含在字符串中

c++ - 指针数组