2012-02-13 106 views
0

我想要訪問List<string> list中的每個元素,並在下面的代碼中分割列表中的每個元素。拆分列表中的單個元素<string>?

for(int i = 0; i < list.Count; i++) 
{ 
    string x= list[i].ToString(); 
    string y= x.Split(':'); 
} 

但是這是行不通的,顯示的原因是「無法隱式轉換字符串[]字符串」。我該如何解決?當我將list[i]存儲在字符串變量中時,它會被視爲字符串數組而不是字符串嗎?

回答

1

當您致電string.Split時,它將返回一個字符串數組,它包含由':'分隔的字符串組成部分。您需要更改string y= x.Split(':');這樣的:

string[] y= x.Split(':'); 

查看文檔的method

+0

哎呀,明白了,謝謝 – KeenUser 2012-02-13 10:19:55

3

此線

string y= x.Split(':'); 

返回字符串[]這就是爲什麼它發生

嘗試這種

string y= x.Split(':')[0]; 
2

由於分裂返回字符串的數組。應該是這樣的:

string[] y= x.Split(':'); 
2

你看過String.Split的簽名嗎?其返回類型是string[],而不是string。因此,您無法將其返回值存儲在string變量中。

+0

權,基礎!我知道。 – KeenUser 2012-02-13 10:20:30

2
for(int i = 0; i < list.Count; i++) 
{ 
    string x= list[i].ToString(); 
    foreach(string y in x.Split(':')) 
    { 
     // do something with y 
    } 
}