我想知道数组中每个数据的位置、数据的索引号以及值。我尝试使用 switch case,但问题不断弹出“控制无法从一个 case 标签('case1:')落到另一个”。我想是因为我在另一个开关盒块内使用了开关盒。帮助我知道是否可以将开关盒放在另一个开关盒内。如果可能的话为什么我的代码是错误的?如果否,您能否建议我另一种方式来提供我想要的输出。我很高兴接受您的意见和建议。 //Multi-dimensional Arrayint i, c = 0;string[,] custNames = new string[2, 2] { { "Bob", "Smith" }, { "Sally", "Marks" } }; Console.WriteLine(custNames.Length); for (i = 0; i < custNames.Length; i++) { switch(i) { case 0: switch (c) { case 0: c = 0; Console.WriteLine("Array {0} : Value : {1}", i, custNames[i, c]); continue; case 1: c = 1; Console.WriteLine("Array {0} : Value : {1}", i, custNames[i, c]); continue; default: break; } case 1: for (c = 0; c < custNames.Length; c++) { switch (c) { case 0: Console.WriteLine("Array {0} : Value : {1}", i, custNames[i, c]); continue; case 1: Console.WriteLine("Array {0} : Value : {1}", i, custNames[i, c]); continue; default: break; } } default: break; } }
1 回答
拉丁的传说
TA贡献1789条经验 获得超8个赞
“你能建议我另一种方式吗”
当您有 { FirstName, LastName } 数据时,您应该考虑一个class Person { ... }而不是多维数组。
但我假设你想在这里练习数组。我根本不明白为什么你需要一个开关,诀窍是GetLength(dimension):
for (int i = 0; i < custNames.GetLength(0); i++)
{
for (int j = 0; j < custNames.GetLength(1); j++)
{
Console.WriteLine("Array [{0},{1}] : Value : {2}", i, j, custNames[i, j]);
}
}
- 1 回答
- 0 关注
- 143 浏览
添加回答
举报
0/150
提交
取消