это может не отвечать вашему первоначальному квесту, но я пытаюсь дать другую перспективу
, вы можете выбрать, как использовать двумерный массив с помощью одномерного массива, как показано ниже, и скрыть детали impl за вашим геттером
public class Matrix {
private String[] data;
private int colCount;
public Matrix(int rowCount, int colCount, String... data) {
this.data = new String[rowCount * colCount];
System.arraycopy(data, 0, this.data, 0, data.length);
this.colCount = colCount;
}
public String get(int row, int col) {
return data[row * colCount + col];
}
}
, и вы можете еще больше упростить это, если ваш rowCount такой же, как colCount
class SquareMatrix extends Matrix{
public SquareMatrix(int size, String... data) {
super(size, size, data);
}
}