break 與 next
在結束本課的迴圈主題前,讓我們回到 break 的概念,以及相關的 next。就像在 repeat 與 while 迴圈中一樣,你可以用 break 敘述完全跳出 for 迴圈。另外,若你只想略過當前這次迭代並繼續下一圈,可以使用 next 敘述。當迴圈遇到錯誤、但你不想讓整個流程中斷時,這會很有用。
for (value in sequence) {
if(next_condition) {
next
}
code
if(breaking_condition) {
break
}
}
你不必同時使用 break 和 next,以上只是示範它們的一般使用結構。
把 next 放在一開始、也就是程式碼執行前的用意,是在問題發生之前先行檢查。
本練習屬於課程
R 金融中級
練習說明
apple 向量已在你的工作空間中。
- 列印
apple。你會看到一些遺漏值! - 在迴圈中補上空格,完成以下動作:
- 檢查
value是否為NA。若是,進入下一次迭代。 - 檢查
value是否大於117。若是,break 並賣出! - 否則列印
"Nothing to do here!"。
- 檢查
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Print apple
___
# Loop through apple. Next if NA. Break if above 117.
for (value in apple) {
if(is.na(___)) {
print("Skipping NA")
next
}
if(value > ___) {
print("Time to sell!")
break
} else {
print(___)
}
}