R For Loop
For 循环
A for
loop is used for iterating over a sequence
This is less like the for
keyword in other programming languages, and works more like an iterator method as found in other object-oriented programming languages.
With the for
loop we can execute a set of statements, once for each item in a vector, array, list, etc..
示例
Print every item in a list
fruits <- list("apple", "banana", "cherry")
for (x in fruits) {
print(x)
}
自己动手试一试 »
The for
loop does not require an indexing variable to set beforehand, like with while
loops.
Break
With the break
statement, we can stop the loop before it has looped through all the items
示例
Stop the loop at "cherry"
fruits <- list("apple", "banana", "cherry")
for (x in fruits) {
if (x == "cherry") {
break
}
print(x)
}
自己动手试一试 »
The loop will stop at "cherry" because we have chosen to finish the loop by using the break
statement when x
is equal to "cherry" (x == "cherry"
).
下一步
With the next
statement, we can skip an iteration without terminating the loop
示例
Skip "banana"
fruits <- list("apple", "banana", "cherry")
for (x in fruits) {
if (x == "banana") {
next
}
print(x)
}
自己动手试一试 »
When the loop passes "banana", it will skip it and continue to loop.
Yahtzee!
If .. Else Combined with a For Loop
To demonstrate a practical example, let us say we play a game of Yahtzee!
示例
Print "Yahtzee!" If the dice number is 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"))
}
}
自己动手试一试 »
If the loop reaches the values ranging from 1 to 5, it prints "No Yahtzee" and its number. When it reaches the value 6, it prints "Yahtzee!" and its number.