This question告诉我如何在没有else的情况下使用if语句。我需要完全相同的东西,但需要多行代码而不是一行代码。
我试过这个,但这似乎不起作用:
def self.foo(a)
{
#mutiple lines of code
}if a == true
end
答案 0 :(得分:4)
这是非常基本的ruby语法。所有ruby control structures都可以内嵌方式使用,或以多行/阻止方式使用,以结束关键字结束。< / p>
def self.foo(a)
if a == true
# mutiple lines of code
end
end
有关语法和ruby最佳实践的更多信息,请参阅:this ruby style guide
答案 1 :(得分:1)
如果你真的想这样做,请使用parenteses,而不是大括号:
def self.foo(a)
(
puts 'a'
puts 'b'
) if a == true
end
虽然我必须警告你,但这种风格在红宝石社区并不常见。请改用常规if
语法。