java在获取数组行列值时,数组越界的一种情况与解决
矩阵获取行列值
int row = matrix.length;
int clo = matrix[0].length;
//其中,martix是二维数组
在java中,没有直接封装的行列值获取函数,因为二维数组可以直接看作n行m列的一维数组,所以获取二维矩阵列值时,可以通过访问matrix[0]第一行的length值获取。
然而,在实际使用时,必须要考虑到边界情况。否则,将发生数组越界,其他类似场景同理。
当输入为[]或[[]]
当方法入口数组为空数组,无论一维还是二维空数组,均无法访问matrix[0],此时会发生数组越界报错。
需对此种边界情况,在做符合场景的处理。
如
int n = matrix.length;
int m = 0;
if(n != 0) {
m = matrix[0].length;
}
if(m==0||n==0){
return false;
}