Вы можете использовать .enumerated()
, чтобы связать индекс с элементом, а затем print(_:terminator:)
, используя index % 3
, чтобы выбрать соответствующий терминатор (перевод строки "\n"
или пробел " "
):
let treeArray = ["Pine", "Oak", "Yew", "Maple", "Birch", "Myrtle"]
for (index, tree) in treeArray.enumerated() {
print(tree, terminator: index % 3 == 2 ? "\n" : " ")
}
Вывод:
Pine Oak Yew
Maple Birch Myrtle
Общий случай: печать n
элементов в строке
Как правило, для печати n
элементов в строке:
print(tree, terminator: index % n == n - 1 ? "\n" : " ")
или эквивалентно:
print(tree, terminator: (index + 1) % n == 0 ? "\n" : " ")
Если вы хотите, чтобы за последним элементом всегда следовал символ новой строки,затем добавьте дополнительную проверку для этого:
print(tree, terminator: index % n == n - 1 || index == treeArray.endIndex - 1 ? "\n" : " ")