![](/img/trans.png)
[英]Does java really support rectangular arrays? If not what are non-jagged arrays called in java?
[英]Difference between jagged and rectangular arrays
所以我意识到主要的区别是一个可以容纳不同大小的行或列,而另一个具有相同的大小。 还有其他区别吗? 另外,我将如何在代码上实现每个?
如果这个问题已经被问到,请不要犹豫关闭这个并将我链接到这个问题。
int[][] rectangular = new int[10][10];
int[][] jagged = new int[10][];
for(int i = 0;i < 10; i++)
jagged[i] = new int[i+1];
第一个创建一个 10x10 的矩形数组,第二个创建一个锯齿状的数组,第二维从 1 到 9 个元素。
没有显着差异,但与其他一些语言不同,Java 支持锯齿状数组。
这取决于您使用它的目的。 如果您尝试实现像棋盘这样的 2D 网格,您需要一个矩形阵列。 如果你试图实现一个类似文件的系统,每一行都有一个数组,每一行都是一个单词数组,那么它会是锯齿状的。
矩形棋盘:
int[][] chessboard = new int[8][8];
锯齿状文件表示(10 行):
BufferedReader reader = new BufferedReader(new FileReader("file"));
String[][] file = new String[10][];
for(int i = 0; i < 10; i++)
file[i] = reader.readLine().split();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.