2

以下のコードは、が非のtrue場合に返されます。@varnil

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

returnまたはの括弧が必要ですnot

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 に答える