拆分List <string>?</string>中的单个元素

时间:2012-02-13 10:15:20

标签: c# list c#-4.0

我正在尝试访问List<string> list中的每个元素,并在下面的代码中拆分列表中的每个元素。

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

但这不起作用,显示的原因是“无法将string []隐式转换为字符串”。我该如何解决?当我将list[i]存储在字符串变量中时,它会被视为字符串数组而不是字符串吗?

5 个答案:

答案 0 :(得分:3)

这一行

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

返回string [],这就是它出现的原因

试试这个

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

答案 1 :(得分:2)

因为split返回一个字符串数组。应该是这样的:

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

答案 2 :(得分:2)

您是否看过String.Split的签名?其返回类型为string[],而不是string。因此,您无法将其返回值存储在string变量中。

答案 3 :(得分:2)

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

答案 4 :(得分:1)

当您调用string.Split时,它将返回一个字符串数组,其中包含由':'分隔的字符串组件。您需要将string y= x.Split(':');更改为:

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

请参阅method

的文档