解决Swift编程中的嵌套循环问题:大书呆子牧场指南
我是学习Swift的新手,正在尝试解决Swift编程中的一个挑战:《大书呆子牧场指南》(第1版)。问题在第6章关于使用嵌套循环: 使用循环从0到100按2计数。使用另一个循环确保第一个循环运行5次。提示:一个好方法是使用嵌套循环 我想我已经找到了答案,但有点不确定,任何建议都将不胜感激解决Swift编程中的嵌套循环问题:大书呆子牧场指南,swift,loops,Swift,Loops,我是学习Swift的新手,正在尝试解决Swift编程中的一个挑战:《大书呆子牧场指南》(第1版)。问题在第6章关于使用嵌套循环: 使用循环从0到100按2计数。使用另一个循环确保第一个循环运行5次。提示:一个好方法是使用嵌套循环 我想我已经找到了答案,但有点不确定,任何建议都将不胜感激 for i in 1...5 { for i in 0...100 { if i % 2 == 0 { print(i) } } } 基本
for i in 1...5 {
for i in 0...100 {
if i % 2 == 0 {
print(i)
}
}
}
基本上,解决方案是正确的。然而,在Swift中有两个更有效的语法
进行筛选,其中
for _ in 1...5 {
for i in 0...100 where i % 2 == 0 {
print(i)
}
}
步幅进行循环
(推荐)
由于未使用外部索引变量,请按照警告中的建议将其替换为“\p>”基本上解决方案是正确的。然而,在Swift中有两个更有效的语法
进行筛选,其中
for _ in 1...5 {
for i in 0...100 where i % 2 == 0 {
print(i)
}
}
步幅进行循环
(推荐)
由于未使用外部索引变量,请遵循警告中的替换为“u”建议我将避免对两个循环使用相同的索引变量
I
。这很让人困惑。@Carpsen90:我不建议这样做,但是可以为循环变量使用相同名称的嵌套循环,内部i
然后简单地将外部i
@MartinR Good to know@Carpsen90阴影化,因为问题要求计数重复5次,所以我认为解决方案是将循环嵌套在另一个循环中,使其运行5次。@delb99如果目标是从0计数到100,则使用嵌套循环,外部循环运行5次,然后查看我的答案。如果你想从0到100计算五次,那么你的代码已经运行了,你应该考虑Duncan和Martin的评论。我会避免对这两个循环使用相同的索引变量I
。这很让人困惑。@Carpsen90:我不建议这样做,但是可以为循环变量使用相同名称的嵌套循环,内部i
然后简单地将外部i
@MartinR Good to know@Carpsen90阴影化,因为问题要求计数重复5次,所以我认为解决方案是将循环嵌套在另一个循环中,使其运行5次。@delb99如果目标是从0计数到100,则使用嵌套循环,外部循环运行5次,然后查看我的答案。如果你想从0数到100五次,那么你的代码已经运行了,你应该考虑Duncan和Martin的评论。我以前没有在for循环中看到过where
限定符。你从哪里学来的?(投票)@Duncan它被列在。where
子句是Swift中的常见模式。它可以用在for
循环、开关
情况、泛型和as类型约束运算符中。我以前没有在for循环上见过where
限定符。你从哪里学来的?(投票)@Duncan它被列在。where
子句是Swift中的常见模式。它可用于for
循环、开关
情况、泛型和类型约束运算符。