【发布时间】:2019-07-14 07:52:06
【问题描述】:
我正在寻找 Array.Fill 的等价物,但用于 List
是否可以用某个值填充所有列表项
Array.Fill(counters, max); // this works
listName.Fill(5); //something like this
将用 5 填充列表
我不想使用循环
鉴于列表中有一些项目
【问题讨论】:
-
for 循环有什么问题?或者做一个扩展方法?无论哪种方式,都必须循环
-
循环会导致更多的运行时间
-
我以为你只是想要一个单线。您应该知道,在底层,所有内容(重复的)都会转换为循环。你同样对循环有一个非常错误的想法。
-
@AdamBahrani 是的,
Array.Fill是有原因的,但这不是你想的那样。这是为了节省开发人员的时间,而不是提高性能。Array.Fill()只是使用循环来迭代和设置元素(here's the source code;你可以自己检查)。您必须以一种或另一种方式使用循环;没有办法解决这个问题。就像我上面说的,你对循环有一个非常错误的想法。
标签: c#