2011-09-27 112 views
2

我想把一個String數組的所有元素放入一個Queue(Of String)中。我有以下其中使用對於...每個把串碼到隊列(串):如何將字符串數組的所有元素放入隊列(字符串)?

Dim Files() As String = OpenFileDialog1.FileNames 
    'OpenFileDialog1 is an instance of OpenFileDialog control 

    Dim PendingFiles As New Queue(Of String) 

    For Each x1 As String In Files 
     PendingFiles.Enqueue(x1) 
    Next 

我的問題:是有可能做到這一點(即把字符串數組隊列(字符串))不使用For ...每個

回答

5

使用需要IEnumerable<T>Queue<T>的構造函數。

Dim PendingFiles As New Queue(Of String)(Files) 
+0

+1,謝謝,它的工作原理! – user774411

+0

值得注意的是,'Queue'的構造函數遍歷集合參數並在每個項目上調用'Enqueue'。使用這個構造函數重載將不會有更好的效果,並且它有一個輕微的缺點,它會降低代碼的可讀性。 – Enigmativity

+0

@Enigmativity:減少? – jason

相關問題