2012-02-13 111 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 
    } 
}