for
循环用于迭代序列:
这不太像for
其他编程语言中的关键字,并且工作方式更像其他面向对象编程语言中的迭代器方法。
随着for
循环我们可以执行一组语句,对向量、数组、列表等中的每个项目执行一次。
这个for
循环不需要预先设置索引变量,就像 withwhile
循环。
随着break
语句,我们可以在循环遍历所有项目之前停止循环:
在 "cherry" 处停止循环:
fruits <- list("apple", "banana", "cherry")
for (x in fruits) {
if (x == "cherry") {
break
}
print(x)
}
亲自试一试 »
循环将在 "cherry" 处停止,因为我们选择使用break
声明时x
等于 "cherry" (x == "cherry"
)。
随着next
语句,我们可以跳过迭代而不终止循环:
跳过"banana":
fruits <- list("apple", "banana", "cherry")
for (x in fruits) {
if (x == "banana") {
next
}
print(x)
}
亲自试一试 »
当循环经过"banana"时,会跳过它继续循环。
为了演示一个实际的例子,假设我们玩 Yahtzee 游戏!
打印 "Yahtzee!" 如果骰子数是 6:
dice <- 1:6
for(x in dice) {
if (x == 6) {
print(paste("The dice number is", x, "Yahtzee!"))
} else {
print(paste("The dice number is", x, "Not Yahtzee"))
}
}
亲自试一试 »
如果循环达到 1 到 5 之间的值,它将打印 "No Yahtzee" 及其编号。当它达到值 6 时,它会打印 "Yahtzee!" 及其编号。
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!