将列表转换为队列 c#
本文关键字:队列 转换 列表 | 更新日期: 2024-11-03 17:34:07
是否可以将列表转换为队列元素?到目前为止,我使用了下面的代码,但如果 c# 中有构建方法,则不需要添加额外的循环
queue1.Clear();
foreach (int val in list1)
{
queue1.Enqueue(val);
}
有什么解决办法吗?
Queue<T>
有一个重载,需要IEnumerable<T>
。请注意,无论如何它都会迭代它:
var queue = new Queue<string>(myStringList);
这是它在内部的作用:
public Queue(IEnumerable<T> collection)
{
_array = new T[_DefaultCapacity];
_size = 0;
_version = 0;
using(IEnumerator<T> en = collection.GetEnumerator())
{
while(en.MoveNext()) {
Enqueue(en.Current);
}
}
}