C# 拆分列表中的单个元素<;字符串>;?

C# 拆分列表中的单个元素<;字符串>;?,c#,list,c#-4.0,C#,List,C# 4.0,我试图访问列表中的每个元素,并在下面的代码中拆分列表中的每个元素 for(int i = 0; i < list.Count; i++) { string x= list[i].ToString(); string y= x.Split(':'); } for(int i=0;i

我试图访问
列表中的每个元素,并在下面的代码中拆分列表中的每个元素

for(int i = 0; i < list.Count; i++)
{ 
    string x= list[i].ToString();
    string y= x.Split(':');
}
for(int i=0;i
但这不起作用,显示的原因是“无法将字符串[]隐式转换为字符串”。我该如何解决这个问题?当我在字符串变量中存储
list[i]
时,它会被视为字符串数组而不是字符串吗?

此行

string y= x.Split(':');
返回字符串[],这就是它出现的原因

试试这个

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

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

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

你看了我的签名了吗?它的返回类型是
string[]
,而不是
string
。因此,您不能将其返回值存储在
字符串
变量中。

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

string[] y= x.Split(':');
有关(int i=0;i的文档 { 字符串x=list[i].ToString(); foreach(x.Split(“:”)中的字符串y) { //和我做点什么 } }
for(int i = 0; i < list.Count; i++)
{ 
    string x= list[i].ToString();
    foreach(string y in x.Split(':'))
    {
        // do something with y
    }
}