为什么我的所有看跌回报=&nbsp?nil?

时间:2013-02-07 00:07:22

标签: ruby null puts

我知道这可能看起来像一个非常简单的问题,但是我真的困扰我,我的推杆不断产生“=> nil”而且我搜索了一个答案,却找不到答案。感谢。

  
    

让'眨眼'* 4     闪烁闪烁闪烁     =>零

  

3 个答案:

答案 0 :(得分:9)

因为那是puts的返回值:

  

puts(obj,...)→nil

     

将给定对象写入ios,与IO#print一样。   在没有记录分隔符之后写入记录分隔符(通常是换行符)   已经以换行序列结束了。如果使用数组参数调用,   将每个元素写在新行上。如果没有参数调用,   输出单个记录分隔符。

来源:http://www.ruby-doc.org/core-1.9.3/IO.html#method-i-puts

另外,我认为这只是在irb?因为调用puts不会在正常应用程序中显示其返回值。

答案 1 :(得分:6)

您可能希望使用p代替put s。

p打印然后返回值。

答案 2 :(得分:2)

Hunter McMillen的回答是正确的。

但是,如果你想要一个实际返回非零值的置换替换,我创建了a gem called reputs

reputs 'blink ' *4
blink blink blink blink
=> "blink blink blink blink "