Это зависит от того, как вы хотите показать это.
Вариант 1
fun Array.contentDeepToString: String
Возвращает строковое представление содержимого этого массива, как если бы это был список. Вложенные массивы также обрабатываются как списки.
Если какой-либо из массивов содержит себя на каком-либо уровне вложенности, эта ссылка отображается как «[...]» для предотвращения рекурсии.
Обратите внимание, что это встроенная функция, использующая Arrays.deepToString(array)
под капотом.
Затем, используя array.contentDeepToString()
, вы получите в выводе эту строку:
[[1, 2], [3, 4], [5, 6, 7]]
Вариант 2
Я в основном использую Array.joinToString
, это позволяет объединять массив с использованием данного разделителя и применять преобразование к каждому элементу. Из документа:
Создает строку из всех элементов, разделенных с помощью [separator] и с использованием заданных [prefix] и [postfix], если они имеются. Если коллекция может быть огромной, вы можете указать неотрицательное значение [limit], в этом случае только первый [limit]
будут добавлены элементы, за которыми следует [усеченная] строка (по умолчанию "...")
В вашем случае, поскольку каждый элемент вашего массива является подмассивом, вы должны применить к ним преобразование, также используя
array.joinToString("\n") { subarray ->
subarray.joinToString()
}
Это даст вам вывод:
1, 2
3, 4
5, 6, 7
Вы можете играть с параметрами разделителя, префикса, постфикса и преобразования , чтобы получить нужный формат.
Заключительные ноты
- Цикл является своего рода единственным способом форматирования массива, либо
contentDeepToString
и joinToString
используйте для цикла в их реализации, примите это во внимание.
joinToString
также доступно для Iterable
и Sequence