拆分时无法将字符串[]隐式转换为字符串
本文关键字:字符串 转换 拆分 分时 | 更新日期: 2023-09-27 18:25:41
我是c#的新手,我不明白为什么这不起作用。我想拆分以前拆分过的字符串。
我的代码如下:
int i;
string s;
string[] temp, temp2;
Console.WriteLine("write 'a-a,b-b,c-c,d-d'";
s = Console.ReadLine();
temp = s.Split(',');
for (i = 0; i < temp.Length; i++)
temp2[i] = temp[i].Split('-');
我得到以下错误Cannot implicitly convert type 'string[]' to 'string
我想以结束
temp = {a-a , b-b , c-c , d-d};
temp2 = {{a,a},{b,b},{c,c},{d,d}};
string.Split()
的结果是string[]
,当您分配给string[] temp
时,您应该已经通过正确的用法看到了它。但是,当您分配给string[] temp2
的元素时,您正试图将字符串的数组存储在仅用于存储字符串string[] temp;
string[][] temp2; // array of arrays
string s = "a-a,b-b,c-c,d-d";
temp = s.Split(',');
temp2 = new string[temp.Length][];
for (int i = 0; i < temp.Length; i++)
temp2[i] = temp[i].Split('-');
当您调用split时,它会返回一个字符串数组。不能将字符串[]分配给字符串变量。
正如其他人所说,Split
返回一个数组。但是,一次可以拆分多个字符。例如,
string s = "a,b,c,d-d";
var split = s.Split(new[] {',', '-'});
在这种情况下,split
数组将包含5个索引,包括"a"、"b"、"c"、"d"answers"d"。