В Java 2D-массив - это не что иное, как массив массивов.
Это означает, что вы можете легко получить количество строк, например:
int rows = array.length;
Это также означает, что каждая строка в таком массиве может иметь разное количество элементов (то есть каждая строка может иметь различное количество столбцов).
int columnsInFirstRow = array[0].length;
Это даст вам только количество столбцов в первой строке, но во второй строке может быть больше или меньше столбцов, чем это.
Вы можете указать, что ваш метод принимает только прямоугольные массивы, а предполагает , что каждая строка имеет такое же количество столбцов, что и первая. Но в этом случае я бы обернул 2D-массив в некоторый класс Matrix (который вам, возможно, придется написать).
Этот тип массива называется Jagged Array .