2013-04-07 78 views
0

我有一個語句檢查一個字符串是否包含另一個;如果沒有,它會運行一些代碼。我不認爲我是以非常優化的方式做到這一點。下面的代碼片段:Ruby否定 - 如果語句

if blocks_in_progress.include? ('|' + blocks[i]) 
else 
    block = blocks[i] 
    break 
end 

回答

3

一個Ruby新手位在這裏,但據我瞭解,以下是首選的方法:

unless blocks_in_progress.include? ('|' + blocks[i]) 
    block = blocks[i] 
    break 
end 

來源:https://github.com/bbatsov/ruby-style-guide(語法部分)

+1

這是完美的。謝謝。 – 2013-04-07 15:13:50

3

一個一個班輪:

break block = blocks[i] unless blocks_in_progress.include? ('|' + blocks[i]) 
+0

也不錯,謝謝。 – 2013-04-07 15:29:48