什么是“ragged array”和“jagged array”的区别?根据我的研究,两者都具有相同的定义,即具有不同列长度的二维数组。
什么是“ragged array”和“jagged array”的区别?根据我的研究,两者都具有相同的定义,即具有不同列长度的二维数组。
锯齿数组是由多个数组组成的数组,其中成员数组的大小可以不同,即我们可以创建一个二维数组,但每行中列数可以是可变的。这种类型的数组也被称为不规则数组。
Contents of 2D Jagged Array
0
1 2
3 4 5
6 7 8 9
10 11 12 13 14
不规则数组也被称为嵌套数组
1- 嵌套数组是非均匀数组
2- 内部数组无法初始化,因此以下代码片段将失败
double[][] jagged = new double[2][3]; //error
3- 相反,每个内部数组都是单独初始化的
double[][] jagged = new double[2][];
jagged[0] = new double[5];
jagged[1] = new double[7];
double[][] jagged = new double[2][3];
是有效的Java代码,对吧?你的意思是它只是不是一个不规则数组,这才是“错误”的吗? - mic不规则数组:是一个多维数组,每个维度的大小不同
例如:
10 20 30
11 22 22 33 44
77 88
不规则数组: 一个数组中的每个项都是另一个数组。
C# 代码:
int[][] jaggedArray = new int[3][];
jaggedArray[0] = new int[5];
jaggedArray[1] = new int[4];
jaggedArray[2] = new int[2];