只对非空元素执行循环操作,怎么办?
Swift循环技巧:只对非空元素执行操作
let numbers: [Int?] = [1, nil, 3, nil, 5]
上面的代码中,numbers
是一个可选类型的数组,包含了 nil
值。如果只想对非空元素进行操作,有以下几种方法
- 使用
for-in
循环配合if let
for number in numbers {if let number {print(number) // 输出:1 3 5}
}
这是最直观的方法,通过 if let
判断每个元素是否非空。
- 使用
for-in
循环配合guard let
for number in numbers {guard let number else { continue }print(number) // 输出:1 3 5
}
相比 if let
,guard let
在处理大量数据时代码更清晰。<