Ruby中的每个方法都返回一个值吗?

时间:2015-03-15 04:08:23

标签: ruby

我读到每个ruby方法都有一个返回值。

但是当我在irb中输入以下内容时:

def printme(txt)
    print(txt)
end

printme('xyz')

输出是:

xyz => nil

所以现在我对printme返回的值感到困惑。这个方法是返回xyz还是nil?为什么那里有冲锋枪?

1 个答案:

答案 0 :(得分:3)

是的,Ruby中的每个方法都返回一个值。

在您的示例中,xyzprintme('xyz')的输出,但不是返回值。返回值为nil。如果没有明确返回任何值,则方法返回其最后一个语句的值,在这种情况下,print方法返回nil

如果您在irb中执行代码,它会在文本=>之后显示返回值。