如何在堆栈中从上到下读取记录?

时间:2017-08-28 13:32:57

标签: c#

下面是我的堆栈类型变量:

var records = Stack<Records>();

假设记录包含如下数据:

3
2
1
5
8

现在我想循环使用上面的变量,但顺序如下:

foreach (var item in records)
{
  // item should have 8 then 5 then 1......
}

注意:我不想创建将其转换为IEnumerableList然后反向循环的开销。

1 个答案:

答案 0 :(得分:4)

您可以使用Reverse()

foreach (var item in records.Reverse()) {
    ...

OP的其他信息:

  

Stack实现为数组。

     

当您需要临时存储时,堆栈和队列非常有用   信息;也就是说,当你想要丢弃一个元素之后   检索它的价值。如果您需要访问,请使用队列   信息的顺序与存储在集合中的顺序相同。使用   System.Collections.Generic.Stack如果你需要访问   反向信息。