今天继续学习 Swift 的课程,这个课有 100 多课,我基本上都保证不了一天一课……比较郁闷啊!
今天学习的是循环控制的内容,与其他语言类似。
for-in 循环
使用 for-in 循环来遍历序列,比如一个范围的数字,数组中的元素或者字符串中的字符
// 遍历输出 0 1 2 3
for i in 0...3 {
print(i)
}
// 输出逐个的字符
foc c in "Hello,World" {
print(c)
}
for-in 遍历字典
当字典遍历时,每一个元素都返回一个(key, value)元组,你可以在 for-in 循环体中使用显式命名常量来分解(key, value)元组成员
for-in 循环
如果不需要序列的每一个值,可以使用下划线来取代遍历名以忽略值
for-in 分段区间
- 使用 stride(from:to:by:) 函数来跳过不想要的标记(开区间)
- 闭区间也同样适用,使用 stride(from:through:by:)即可
在 Swift 中可以指定开区间和闭区间,可以避免部分的边界问题,我觉得这个比较好一些
while 循环
repeat-while 循环
示例代码
把上面的关于字典遍历,开闭区间循环,repeat-while 循环,用代码进行演示
let dict = ["spider": 8, "ant": 6, "cat": 4]
for item in dict {
// 输出元组
print(item)
// 输出 key value
print("\(item.key) has \(item.value) legs")
}
for (animalName, legCount) in dict {
// 输出两个变量的值
print("\(animalName) has \(legCount) legs")
}
// 闭区间
for i in stride(from: 0, to: 50, by: 5) {
print(i)
}
// 开区间
for i in stride(from: 0, through: 50, by: 5) {
print(i)
}
let base = 3
let power = 5
var result = 1
// 这里循环时,只是循环一个固定的次数,省略掉了类似 C 语言中的循环计数变量
for _ in 1...power {
result *= base
}
// 243
print(result)
// repeat-while 循环
var count = 0
repeat {
print(count)
count += 1
} while count < 5
我的微信公众号:“码农UP2U”
网友评论