如何创建n个字节的数组
本文关键字:字节 数组 何创建 创建 | 更新日期: 2023-09-27 18:04:03
如何创建n字节数的byte[] digits;
?
我知道我可以做Enumerable.Range(1, n).ToArray();
,但这会创建一个int[]。是否有一种方法来创建一个byte[]?
我优先考虑的是快速的性能。记住这一点,是否有一种更快的方法(稍微多一点代码)来创建它?
如果你真的喜欢LINQ,你可以做
byte[] digits = Enumerable.Range(1, n).Select(i => (byte)i).ToArray();
也有可能
byte[] digits = new byte[n];
for (byte b = 1; b <= n; ++b)
digits[b - 1] = b;
创建字节数组实例有什么问题?
byte[] digits = new byte[n];
如果你想用1到n的值进行初始化,那么我认为:
for(int i = 1; i <= n; i++)
digits[i-1] = (byte)i; // index is 0-based
也会让你尽快得到想要的结果。当然,其中n <256年!
要创建一个字节数组并用字节1到n填充它,您只需创建数组并使用循环:
byte[] digits = new byte[n];
for (int i = 0; i < n; i++)
{
digits[i] = (byte) (i + 1);
}
注意,那么digits[0]
将是1等…这是你想要的吗?
int[]
代替,会漏掉它们吗?该数据的自然类型是什么?你用它做什么? 你可以这样做:
byte[] digits=new byte[2024];