【发布时间】:2017-08-26 22:45:07
【问题描述】:
假设我们有一个二维数组 int[][] arr = new int[][] { { 1, 2 }, { 3, 4, 5 }, { 6, 7 }, { 8, 9 } };
这里,arr[1] 的长度为3。
是否有任何有效的方法来检查二维数组中存在的所有一维数组是否具有相同的长度?
说,不循环遍历数组,或者可以通过使用任何可以首选的数据结构而不是int[][]?
【问题讨论】:
-
除非您以某种有效的方式对长度进行预处理,否则您无法避免某处出现循环 - 您需要检查每个元素。
-
谢谢,奥利弗。我正在考虑避免检查。
-
不,我可以使用任何其他数据结构,比如 List
代替 int[][] -
数组从何而来?
-
您可以在自己的类中封装一个
int[][](例如IntArray2D,构造函数采用两个长度参数)以将数组限制为相同的长度。