对于频繁仅在集合开头插入和删除对象的代码,您会推荐哪种集合。
下面是一些代码来说明我的要求
while (collection.Count != 0)
{
object obj = collection[0];
collection.RemoveAt(0);
...
if (somethingWith(obj))
collection.Insert(0, anotherObj);
...
}
在 0 以外的位置没有插入或删除。集合未排序。
你会推荐什么?
编辑:
我真的不需要对这个系列做任何花哨的事情。该集合用于对应处理的对象进行排队(并在处理期间填充集合)。
最佳答案
看来你只想实现一个 LIFO容器,所以你可以使用 Stack<T>
:
while (stack.Count > 0) {
object obj = stack.Pop();
// ...
if (SomethingWith(obj)) {
stack.Push(anotherObj);
}
}
关于c# - 在开始时对插入和移除进行高效收集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6241756/