从锯齿状数组中获取字符串数组
Get an array of string from a jagged array
我有一个包含其他一维字符串数组的锯齿状数组:
string[] first = {"one","two"};
string[] second = {"three","four"};
string[][] jagged = {first,second};
当我尝试获取子数组时,它们给出了一个空值(我可能做错了什么):
foreach (string[] arr in jagged[][]) {
// My stuff here
}
是我在数组初始化过程中做错了什么,还是必须以某种方式转换子数组?
只是foreach部分是错误的。
我已经测试如下:
string[] first = { "one", "two" };
string[] second = {"three","four"};
string[][] jagged = {first,second};
foreach (string[] arr in jagged)
{
Console.WriteLine(string.Join(",", arr));
}
输出:
one, two
three, four
应该是:
foreach (string[] arr in jagged)
{
// My stuff here
}
我将你的代码粘贴到我的本地环境中,并且可以很好地迭代。
如果您在循环中使用 jagged[][]
,那么您可能会收到类型转换失败的消息:
Cannot convert type 'char' to 'string'.
而是在循环中使用 jagged
。
public class Program
{
public static void Main()
{
string[] first = {"one","two"};
string[] second = {"three","four"};
string[][] jagged = {first,second};
foreach (string[] arr in jagged)
{
//Your code
}
}
}
我有一个包含其他一维字符串数组的锯齿状数组:
string[] first = {"one","two"};
string[] second = {"three","four"};
string[][] jagged = {first,second};
当我尝试获取子数组时,它们给出了一个空值(我可能做错了什么):
foreach (string[] arr in jagged[][]) {
// My stuff here
}
是我在数组初始化过程中做错了什么,还是必须以某种方式转换子数组?
只是foreach部分是错误的。 我已经测试如下:
string[] first = { "one", "two" };
string[] second = {"three","four"};
string[][] jagged = {first,second};
foreach (string[] arr in jagged)
{
Console.WriteLine(string.Join(",", arr));
}
输出:
one, two
three, four
应该是:
foreach (string[] arr in jagged)
{
// My stuff here
}
我将你的代码粘贴到我的本地环境中,并且可以很好地迭代。
如果您在循环中使用 jagged[][]
,那么您可能会收到类型转换失败的消息:
Cannot convert type 'char' to 'string'.
而是在循环中使用 jagged
。
public class Program
{
public static void Main()
{
string[] first = {"one","two"};
string[] second = {"three","four"};
string[][] jagged = {first,second};
foreach (string[] arr in jagged)
{
//Your code
}
}
}