如何将对象列表转换为保持相同顺序的队列?如何将对象列表转换为对象队列
23
A
回答
39
Queue
具有一个构造函数在ICollection
。您可以将您的列表到队列中使用相同的元素初始化:
var queue = new Queue<T>(list); // where 'T' is the lists data type.
3
var q = new Queue<Object>();
for(int i = 0; i < list.Count; i++) q.Enqueue(list[i]);
也就是说,假设“相同顺序”意味着要从队列中出列的第一项应该是list [0]。
如果这意味着相反的,只要使用逆循环:for(int i = list.Count-1; i >= 0; i--)
0
var mylist = new List<int> {1,2,3};
var q = new Queue<int>(mylist);
4
什么你的意思做“相同的顺序?”
如果你这样做:
var queue = new Queue<object>(list);
那么队列将在相同的顺序列表,这意味着到Dequeue
的调用将返回此前在list[0]
居住的元素列举了。
如果你这样做:
var queue = new Queue<object>(list.AsEnumerable().Reverse());
那么队列会以相反的顺序为列表,这意味着到Dequeue
的调用将返回此前在list[list.Count - 1]
居住的元素列举了。
+0
提及两个方向。 – 2010-08-12 01:04:46
相关问题
- 1. 将IEnumerable对象列表转换为对象数组列表C#
- 2. 如何将对象类型列表转换为对象数组
- 3. 如何将对象列表转换为JSON对象?
- 4. 如何将平行列表的对象转换为对象列表?
- 5. 我如何将DataTable转换为列表{对象,列表{对象}} Linq
- 6. 将Hashtable转换为对象列表
- 7. 将平面列表转换为对象
- 8. 将JSON转换为C#对象列表
- 9. 将deque对象转换为列表
- 10. 将JSON对象转换为C#列表
- 11. 将对象转换为通用列表
- 12. 如何将对象列表转换为接口列表?
- 13. 如何将列表(对象)快速转换为列表(“Object.field”)?
- 14. 如何将对象列表转换为另一个列表。
- 15. 如何将散列表向下转换为抽象类对象
- 16. 如何列表对象转换为DataTable对象
- 17. 将字符串对象转换为python中的列表对象
- 18. 将对象转换为其他类型,包括对象列表
- 19. 将列表对象转换为Dataframe(series)对象,python
- 20. 将对象阵列转换为不同的对象阵列
- 21. Python将对象列表转换为一个对象参数的列表
- 22. Java8将对象列表转换为对象的一个属性列表
- 23. 转换列表到对象[] []
- 24. 转换对象列表
- 25. 如何将html表列转换为表行,dom对象,php
- 26. 如何将django模型对象和相关对象转换为字典列表?
- 27. 如何将对象列表转换为java中的一个行对象
- 28. 如何将JSON数组或JSON对象转换为对象列表?
- 29. 如何将继承对象的列表转换为Java中的对象集合?
- 30. 如何将后代对象列表转换为父对象列表而不创建新列表?
是否存在非通用队列? – zerkms 2010-08-11 23:42:04
好的。实际上有一个非通用队列,但你可能需要通用版本。我已经更新了我的答案。 – 2010-08-11 23:44:15
@zerkms:'System.Collections'命名空间中有一个非泛型'Queue'类:http://msdn.microsoft.com/en-us/library/system.collections.queue.aspx – Rich 2010-08-11 23:45:05