2013年11月26日 星期二

Ruby學習記錄(1)--ternary operator

Ruby of Rails(簡稱ROR)是一套很聰明又很容易維護的Web Framework,現在已經是全世界許多Web developer開發的首選之一。

Ruby語言是由一個日本人開發出來的,奇怪,怎麼看了這麼多框架、語言,怎麼就都沒看到有華人發展出來的?還是其實有,但我孤陋寡聞?請告訴我。

今天要記錄的是一個令我感到相當訝異的語法,顛覆了我以前對於所有程式語言一定都有的if/else判斷刻板印象。

不管是哪一種程式語言,一定會有if/else判斷式,主要目的是在判斷ture/false後再進行後續的操作,以Ruby的判斷寫法如下:

a = 800
if a >= 1000
   b = "a >= 1000"
else
   b = "a < 1000 "
end if


但Ruby對於這種簡易的if判斷式,透過Ruby的三元運算式可以簡化成下面的寫法:
a = 800
b = ( a >=1000) ? "a>=1000" : "a < 1000"

是不是覺得很聰明?但沒有仔細去學Ruby語法,直接看範例程式,絕對會霧煞煞,看得很痛苦。

參考資料:
Ruby on Rails實戰聖經
Ruby ternary operator

沒有留言:

張貼留言