Здравствуйте. У меня есть метод choiceLevel, который возвращает таблицу запрашиваемого уровня сложности, и метод sortBoardsByLevels, генерирующий таблицы и сортирующий их по разным уровням сложности до момента, пока будут сформированы таблицы всех трех уровней сложности. Как мне вернуть из второго метода таблицы (а это аж 3 двумерных массива) ? Можно конечно объединить методы в один, но получается громоздко и некрасиво
public int[][] choiceLevel(int size, int level) {
sortBoardsByLevels(size);
int[][] gameReadyBoard = new int[size][size];
switch (level) {
case (1):
gameReadyBoard = board1; // вот здесь и ниже хочу получить нужные таблицы
break;
case (2):
gameReadyBoard = board2;
break;
case (3):
gameReadyBoard = board3;
break;
}
printTheBoard(gameReadyBoard);
return gameReadyBoard;
}
private void sortBoardsByLevels(int size) {
int[][] board1 = new int[size][size];
int[][] board2 = new int[size][size];
int[][] board3 = new int[size][size];
BoardFactory boardFactory = new BoardFactory();
int[][] board = boardFactory.generateBoard(size); // генерируется предварительная таблица, не готовая для игры
boolean a = false;
while (!a) {
int[][] unsorted = selectCell(board); // получаем таблицу с рандомно скрытыми клетками, таблица готова к игре, но не отсортирована по уровням
int count = countAmountOfHiddenCells(unsorted); // узнаем количество скрытых клеток
if (count >= 28 && count < 35) board1 = unsorted;
else if (count >= 35 && count < 42) board2 = unsorted;
else if (count >= 42) board3 = unsorted;
board = boardFactory.generateBoard(size);
if (cheсkTheBoardIsFull(board1) && cheсkTheBoardIsFull(board2) && cheсkTheBoardIsFull(board3)) a = true;
} // удостоверяемся, что получили таблицы всех уровней
}