2

下面的代码返回trueif@var是 non- nil

class MyClass
    def a_simple_method
        not @var.nil?
    end
end

当我使用这样的关键字时return

class MyClass
    def a_simple_method
        return not @var.nil?
    end
end

它返回一个语法错误:

syntax error, unexpected tIVAR, expecting '('
        return not @var.nil?
                       ^

我理解错了return什么?

4

2 回答 2

4

它告诉你使用()

class MyClass
    def a_simple_method
        return not(@var.nil?)
    end
end
于 2012-10-01T15:45:55.047 回答
1

你需要括号 forreturn或 fornot

class MyClass

    def a_simple_method
        return(not @var.nil?)
    end
end

class MyAnotherClass

    def a_simple_method
        return not(@var.nil?)
    end
end

MyClass.new.a_simple_method
MyAnotherClass.new.a_simple_method

在此处查看现场演示

于 2012-10-01T15:52:06.580 回答