2014-07-01 109 views
-5

我正在使用一些現有的C#代碼。基本上,我有一個變量,它是一個對象列表。object to string []

每個對象又是一個字符串[n]。我知道n,並且列表中所有對象的值都是相同的。我需要知道的是如何遍歷對象列表並獲得對於每個項目的一個

string[n] 
+4

foreach循環? – Liath

+0

是的,但我不知道如何將每個單個對象轉換爲一個字符串數組。 – Giuseppe

+2

你爲什麼要轉換任何東西?你有'清單'或'清單'?顯示一些代碼。我非常確定每個C#教程都會覆蓋遍歷循環。 – Tarec

回答

1

我讀的怎麼投編譯時類型Object的目的是的string[]其運行時類型你的問題。你這樣做,就像這樣:

Object obj = ...; 
string[] arr = (string[]) obj; 
0

使用Enumerable.SelectMany。它將序列的每個元素投影到一個IEnumerable,並將結果序列展平成一個序列。

var resultantArray = myarray.SelectMany(x => x).ToArray(); 
1

那麼鑄造objectstring[]呢?

string[] arr = (string[])listOfObjects[x]; 
1

這聽起來像你想的Cast方法:

foreach(string[] strings in listOfStringArrays.Cast<string[]>()) 
{ 
    // ... 
}