如何將對象列表轉換爲保持相同順序的隊列?如何將對象列表轉換爲對象隊列
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