swift - 在 Swift 中的 for 语句中显示多个值
问题描述
嗨,我是编程新手。如果这是一个愚蠢的问题,我事先道歉,但我正在学习 For 循环。以下是我理解的示例代码。我知道如何编写一个基本的 For 循环,它在每个循环中迭代一个变量,但是如何使用 For 循环在一个循环中显示多个值。例子:
let treeArray = ["Pine", "Oak", "Yew", "Maple", "Birch", "Myrtle"]
for tree in treeArray {
print(tree)
}
我希望能够在一个循环中打印三个变量,以便打印代码
Pine Oak Yew
在一条线上
Maple Birch Myrtle
接下来
代替
Pine
Oak
Yew
Maple
Birch
Myrtle
谢谢!
解决方案
您可以使用.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" : " ")
推荐阅读
- flutter - 是否可以使用 Flutter 构建 Apple Watch App?
- c++ - 在类中使用 C++20 中的“使用枚举”可能吗?
- javascript - 在 Chrome 加载时为元素设置动画
- string - 转义序列 \a 做什么以及我应该何时使用它?
- python - NaT 值不会被 pandas 数据框中的 NaN 替换
- html - 文本覆盖在某些浏览器中不起作用
- python-3.x - 合并数据框导致行松散
- vis.js - 布局节点 - 节点之间的空间?
- java - 谁能指出可能需要调查的领域,以找出 Java 进程中 CPU 使用率达到 25% 的可能原因?
- tensorflow - import tensorflow as tf error occur in Anaconda Navigator