如何将对象列表转换/转换为对象队列
如何将对象列表转换为保持相同顺序的队列?
Queue
有一个构造函数,它接受ICollection
。 您可以将列表传递到队列中,以使用相同的元素对其进行初始化:
var queue = new Queue(list); // where 'T' is the lists data type.
你对“同一个订单”是什么意思?
如果你这样做:
var queue = new Queue
然后,队列将以与列表相同的顺序进行枚举,这意味着对Dequeue
的调用将返回先前驻留在list[0]
的元素。
如果你这样做:
var queue = new Queue
然后,队列将以与列表相反的顺序进行枚举,这意味着对Dequeue
的调用将返回先前驻留在list[list.Count - 1]
的元素。
var q = new Queue
也就是说,假设“相同顺序”意味着要从队列中出队的第一项应该是list [0]。
如果它意味着相反,只需使用反向循环: for( int i = list.Count-1; i >= 0; i-- )
var mylist = new List {1,2,3}; var q = new Queue (mylist);