用红宝石分解条件

时间:2015-04-03 10:07:42

标签: ruby

是否可以使用像|| =或其他东西的ruby运算符对此行进行分解? :

if sheet.rows[start[:y]] then row = sheet.rows[start[:y]] else row = sheet.add_row [] end

1 个答案:

答案 0 :(得分:2)

您可以使用三元运算符:

row = sheet.rows[start[:y]] ? sheet.rows[start[:y]] : sheet.add_row([])

可替换地:

row = sheet.rows[start[:y]]
row = sheet.add_row [] if !row

或(感谢@tight):

row = sheet.rows[start[:y]] || sheet.add_row([])