Control Structure
這個部分新手最多花30分鐘記一記就好了,連稍難的地方都沒有,結合其他章節練習實作比較快熟悉,看過之後可以了解到各個控制結構可以結合成巢狀的控制結構。
if / else if / else
#有三種情況: #定義符合某情況做哪些事...if #定義符合某情況做哪些事,否則做什麼事...if / else #定義符些某情況做哪些事,否則做什麼事...if / else if / else if(1st condition matched){ do something; }else if(2nd condition matched){ do something; }else{ if no condition matched, execute statement here... }
for
拿
for(i in 1:10){do something}
來說,我猜R是取用for loop當中容器的迭代器來遍歷容器當中每一個元素,並透過迭代器把元素的值(1、2...10)賦予指定的變數(i)讓回圈內的語句(do something)使用,通常沒接觸過其他語言的新手會看不懂但無所謂,有興趣可以去看看wiki有關於iterator的描述,或是直接看語法的使用方式就好。for(variable in container){ #do something... }
while:
當某個情況為真時,就會執行回圈內語句,然後重複檢查-執行,直到某情況不為真。
while(boolean evaluation = TRUE){ #do something }
repeat:
不停地做某些事,直到在語句內執行到跳脫(break),通常都會在結構內安置if判斷式看是否要跳脫repeat執行結構。
repeat{ #do something if(condition){ break } }
break / next
break:
就是跳脫"迴圈結構",繼續"迴圈結構外的語句"。
next:
跳過"當次迴圈",繼續"下次迴圈"。