为何我的多维数组打印结果不符合预期?我遗漏了什么?
问题分析与修正
你的代码逻辑是遍历数组的每一个元素并打印,这和你预期的输出(行索引+对应行的数组长度)完全不匹配,所以才会出现结果差异。
要得到你想要的输出,不需要内层循环,直接在每行输出当前行的索引和该行数组的长度即可:
int[][] matrix = new int[4][]; matrix[0] = new int[2]; matrix[1] = new int[6]; matrix[2] = new int[4]; matrix[3] = new int[5]; for (int row = 0; row < matrix.Length; row++) { // 直接打印行索引和对应行的长度,用逗号分隔 Console.WriteLine($"{row}, {matrix[row].Length}"); }
运行这段代码后,输出就是你预期的:
0, 2 1, 6 2, 4 3, 5
内容的提问来源于stack exchange,提问作者Björn Terlegård
相关产品推荐
相关产品推荐

