Jeśli chcesz utworzyć jednolinijkową reprezentację macierzy, możesz użyć Arrays.deepToString
.
W przypadku, gdy chcesz stworzyć multi-line reprezentacji prawdopodobnie będziesz musiał iteracyjne nad wszystkich wierszy i dołącz wynik Array.toString(array[row])
jak
String[][] array = { { "a", "b" }, { "c" } };
String lineSeparator = System.lineSeparator();
StringBuilder sb = new StringBuilder();
for (String[] row : array) {
sb.append(Arrays.toString(row))
.append(lineSeparator);
}
String result = sb.toString();
Ponieważ Java 8 można nawet użyć StringJoiner
z automatycznie dodać ogranicznik dla Ciebie:
StringJoiner sj = new StringJoiner(System.lineSeparator());
for (String[] row : array) {
sj.add(Arrays.toString(row));
}
String result = sj.toString();
lub wykorzystujące strumienie
String result = Arrays
.stream(array)
.map(Arrays::toString)
.collect(Collectors.joining(System.lineSeparator()));
Dostajesz odniesienie do tablicy. Powinieneś przetestować wszystkie elementy i połączyć je, aby uzyskać pożądany wynik. –