R For 循环
For 循环
for
循环用于迭代序列:
这不像其他编程语言中的 for
关键字,而更像是其他面向对象编程语言中的迭代器方法。
通过 for
循环,我们可以执行一组语句,对向量、数组、列表等中的每个项目执行一次。
for
循环不需要预先设置索引变量,就像 while
循环一样。
Break
使用 break
语句,我们可以在循环遍历所有项目之前停止循环:
实例
在 "cherry" 处停止循环:
fruits <- list("apple", "banana", "cherry")
for (x in fruits) {
if (x == "cherry") {
break
}
print(x)
}
亲自试一试 »
循环将在"cherry"处停止。 因为我们选择在 x
等于 "cherry" 时使用 break
语句来完成循环。 (x == "cherry"
)。
Next
使用 next
语句,我们可以跳过迭代而不终止循环:
实例
Skip "banana":
fruits <- list("apple", "banana", "cherry")
for (x in fruits) {
if (x == "banana") {
next
}
print(x)
}
亲自试一试 »
当循环经过"banana"时,会跳过它继续循环。
Yahtzee!
If .. Else 与 For 循环结合
为了演示一个实际的例子,假设我们在玩 Yahtzee 游戏!
实例
如果数为6,则打印 "Yahtzee!":
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!" 及其编号。
嵌套循环
你也可以在循环内有一个循环:
实例
打印列表中每个水果的形容词:
adj <- list("red", "big", "tasty")
fruits <- list("apple", "banana",
"cherry")
for (x in adj) {
for (y in fruits) {
print(paste(x, y))
}
}
亲自试一试 »