作爲一個有趣的項目,我在Ruby中實現了一個Beatnik解釋器。如果您從未聽說過Beatnik,那麼這是一種深奧的編程語言,其操作由源代碼中單詞的「拼字比分」指定。Ruby在條件下執行某個函數的一種巧妙方式
無論如何,實現需要針對不同的拼字遊戲得分發生不同的操作。這不是來具體實施,一個明顯的方法是一個if語句:
if score == 1
...
elsif score == 2
...
else
...
end
另一種方法是使用一個case語句:
case score
when 1
...
when 2
...
else
...
end
但無論是這兩種方法給我的印象特別優雅,你能否提出一個實現這個的另一種方式?
我愛堆棧溢出教我這樣的重要的東西。除此之外,我還有什麼可以學會的:「<5不做任何事情。Beatnik口譯員可以根據自己的判斷嘲笑你可憐的得分。」 +1! – RichieHindle 2009-06-30 00:11:18
[一組可能的方法來創建和調用函數dynamicaly](http://stackoverflow.com/a/11112426/1468040) – wiki 2012-06-20 03:33:06