【发布时间】:2015-03-23 12:32:49
【问题描述】:
class Program
{
static void Main(string[] args)
{
Queue ar = new Queue();
ar.Enqueue(45);
ar.Enqueue(23);
ar.Enqueue(2);
ar.Enqueue(87);
foreach (int x in ar)
{
Console.Write("{0} ", x);
}
Console.ReadLine();
}
}
我知道如何使用 foreach 循环从队列中检索值。但是我可以知道在 for 循环的帮助下可以做同样的事情吗?
我尝试了以下代码。但 ar[i] 不是有效代码。 ar[i] 的合适代码是什么?
for (int i = 0 ; i < ar.count ; i++) {
Console.Write("{0} ", ar[i]);
}
【问题讨论】:
-
ar.Dequeue()将代替ar[i]。但为什么..?如果 foreach 有效,请使用它。顺便说一句,使用通用Queue<T>而不是Queue,这样你就可以避免拳击。 -
队列没有索引器。如果是这样,它就不会是一个队列。
-
如果您需要
foreach中的索引,只需在循环前创建int index = 0;并在循环结束时创建index++;。或者考虑使用List,因为Queue不应该被索引。