C# 数组初始化 - 具有非默认值

标签 c# .net

您知道在 C# 中初始化动态大小数组的最巧妙方法是什么?

这是我能想到的最好的

private bool[] GetPageNumbersToLink(IPagedResult result)
{
   if (result.TotalPages <= 9)
      return new bool[result.TotalPages + 1].Select(b => true).ToArray();

   ...

最佳答案

如果“最流畅”是指最快,恐怕 Enumerable.Repeat 可能比 for 循环慢 20 倍。 参见 http://dotnetperls.com/initialize-array :

Initialize with for loop:             85 ms  [much faster]
Initialize with Enumerable.Repeat:  1645 ms 

所以使用 Dotnetguy 的 SetAllValues() 方法。

关于C# 数组初始化 - 具有非默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/136836/

相关文章:

c# - 可以在 Visual Studio 中使用 WSDL 自动生成代码

c# - LINQ:元组列表到列表元组

c# - 如何向 MS Word 页脚中的表格单元格添加页码引用

sql - 通过 .net 访问 UniData

c# - .Net 中的方法重载成本

c# - 在 for 循环中使用相同的对象 - C#

c# - 异步处理项目的实现

.net - MonoDevelop 因每个错误而崩溃

c# - FastReport .NET 注册数据

c# - 为什么序列化 double[] 在 WinCE 中不起作用?