队列在C#Ilist中

时间:2010-06-08 22:47:14

标签: c# list sorting

我有一个包含5个元素的列表...我想要移动所有元素,删除最后一个元素并为第一个元素添加新值。是否有任何预先制作的列表方法可以帮助我这样做? 像队列一样

5 个答案:

答案 0 :(得分:5)

您可以使用Queue<T>

编辑:您的措辞可以通过几种不同的方式解释,但如果您想要先进先出行为,请使用Queue<T>。如果您想要先进行操作,请使用Stack<T>

答案 1 :(得分:3)

Queue<T>怎么样?

答案 2 :(得分:2)

您可以多次使用Queue<T>。但请注意,Queue会将项目添加到最后,并从前面删除,这是您指定的相反行为。如果您将此收藏集用作IEnumerable<T>并对其进行枚举,则Queue<T>将从您的规范中退回。

有两种方法可以轻松解决这个问题。如果通过使用Enumerable.Reverse()将其视为可枚举,则可以反向迭代队列。

或者,您可以使用LinkedList<T>。这允许您从集合的开头和结尾插入和删除。这样可以保留您指定的顺序。

如果订单无关紧要,而您只需要一个通用队列,那么Queue<T>绝对是最佳选择。

答案 3 :(得分:1)

您可以使用Queue课程。它应该提供你需要的所有方法。

答案 4 :(得分:1)