當前文章的短網址連結為: https://unos.top/p515
在 Swift 中,forEach
是一个用于遍历集合(如数组、字典等)的高阶函数。它允许你对集合中的每个元素执行一个闭包(closure),使得代码更加简洁和易读。
基本语法
forEach
的基本语法如下:
collection.forEach { element in
// 对每个元素执行的操作
}
这里,collection
是你要遍历的数组或其他集合类型,element
是当前遍历到的元素。
使用案例
以下是一些使用 forEach
的示例:
1. 遍历数组
假设我们有一个整数数组,我们想要打印每个元素:
let numbers = [1, 2, 3, 4, 5]
numbers.forEach { number in
print(number)
}
在这个例子中,forEach
遍历 numbers
数组中的每个元素,并将其打印出来。
2. 计算数组元素的平方
我们可以使用 forEach
来计算数组中每个元素的平方,并将结果存储在另一个数组中:
let numbers = [1, 2, 3, 4, 5]
var squares: [Int] = []
numbers.forEach { number in
squares.append(number * number)
}
print(squares) // 输出: [1, 4, 9, 16, 25]
在这个例子中,forEach
对每个元素执行平方计算,并将结果添加到 squares
数组中。
3. 遍历字典
forEach
也可以用于遍历字典。以下是一个示例,打印字典中的键值对:
let fruits = ["apple": 1, "banana": 2, "orange": 3]
fruits.forEach { (key, value) in
print("\(key): \(value)")
}
在这个例子中,forEach
遍历 fruits
字典中的每个键值对,并打印出来。
与 for-in
的比较
虽然 forEach
和 for-in
都可以用于遍历集合,但它们之间有一些区别:
- 可读性:
forEach
使得代码更简洁,尤其是在需要对每个元素执行简单操作时。 - 返回值:
forEach
不会返回值,而for-in
可以用于控制流(如break
和continue
)。 - 性能:在某些情况下,
for-in
可能会比forEach
更高效,尤其是在需要提前退出循环时。