С toString()
вам нужно вернуть String
объект, но на самом деле вы пытаетесь вернуть int[][]
.То же самое верно для ShowBoard
, вы пытаетесь вернуть массив Stringarrays, который не является совместимым типом.
Вот исправление:
public String ShowBoard() {
// your code to populate StrArrayBoard
StringBuilder boardBuilder = new StringBuilder();
for (String[] row:StrArrayBoard)
for (String cell:row)
sb.append(cell);
return boardBuilder.toString();
}
public String toString() {
return ShowBoard();
}
Я предлагаю рефакторингкод и методы и поля переименования:
ShowBoard() --> getBoardAsString()
ArrayBoard --> arrayBoard
StrArrayBoard --> strArrayBoard
И нет необходимости объявлять StrArrayBoard как поле (член класса) только потому, что он нужен только внутри метода ShowBoard
.Объявите это как локальную переменную.