在 Swift 中,for-in 是一种常用的循环语法,用于迭代数组、集合、范围等可迭代的序列。它属于 Swift 的基础控制流结构之一。
基本语法
for item in sequence {
// 对每个 item 执行的代码
}
示例用法
1、遍历数组
let fruits = ["苹果", "香蕉", "橘子"]
for fruit in fruits {
print("我喜欢吃 \(fruit)")
}
输出:
我喜欢吃 苹果
我喜欢吃 香蕉
我喜欢吃 橘子
2、遍历范围
for number in 1...5 { // 包含 5
print("数字是 \(number)")
}
输出:
数字是 1
数字是 2
数字是 3
数字是 4
数字是 5
注意:如果想要不包含结束值,可以使用 ..< 运算符:
for number in 1..<5 { // 不包含 5
print("数字是 \(number)")
}
3、遍历字典
let animals = ["cat": "猫", "dog": "狗", "bird": "鸟"]
for (key, value) in animals {
print("\(key) 的中文是 \(value)")
}
输出:
cat 的中文是 猫
dog 的中文是 狗
bird 的中文是 鸟
4、遍历字符串的字符
let text = "Hello"
for char in text {
print("字符是 \(char)")
}
输出:
字符是 H
字符是 e
字符是 l
字符是 l
字符是 o
5、使用索引和元素 (enumerated)
如果需要索引,可以使用 .enumerated():
let names = ["Alice", "Bob", "Charlie"]
for (index, name) in names.enumerated() {
print("第 \(index + 1) 个名字是 \(name)")
}
输出:
第 1 个名字是 Alice
第 2 个名字是 Bob
第 3 个名字是 Charlie
6、条件循环 (where)
可以在 for-in 循环中使用 where 过滤元素:
for number in 1...10 where number % 2 == 0 {
print("偶数:\(number)")
}
输出:
偶数:2
偶数:4
偶数:6
偶数:8
偶数:10
特点总结
1、简单易用:for-in 提供了清晰、易读的语法。
2、灵活:可以遍历数组、范围、字典、字符串等。
3、过滤支持:可以通过 where 添加条件。
4、适合大多数序列操作。
如果需要控制更复杂的循环行为,可以结合 break 或 continue 使用。