Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails ruby代码中nil测试的关键_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails ruby代码中nil测试的关键

Ruby on rails ruby代码中nil测试的关键,ruby-on-rails,ruby,Ruby On Rails,Ruby,我在ruby代码中有一个关键点(摘自): 当我使用ruby命令运行此脚本时,它会打印: Hello World! Goodbye World. Come back soon. Hello Zeke! Goodbye Zeke. Come back soon. Hello ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]! Goodbye ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]

我在ruby代码中有一个关键点(摘自):

当我使用ruby命令运行此脚本时,它会打印:

Hello World!
Goodbye World. Come back soon.
Hello Zeke!
Goodbye Zeke. Come back soon.
Hello ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]!
Goodbye ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]. Come back soon.
...
ri20min.rb:15:in `say_hi': undefined method `elseif' for #<MegaGreeter:0x00000001a2d4a0 @names=nil> (NoMethodError)
        from ri20min.rb:54:in `<main>'
但是这个错误让我很沮丧! 似乎nil对象没有nil方法!

如何修改此代码以正确运行。

ruby中没有
elseif
,但是有
elsif
ruby中没有
elseif
,但是ruby中有
elsif

没有
elseif
,但是ruby中有
elsif
没有
elseif
,但是还有
elsif

ruby版本是:ruby 1.9.3p484(2013-11-22修订版43786)[x86\u 64-linux]您读过错误消息了吗?在错误消息中,它在哪里说
nil
没有
nil?
方法?无法理解的方法名称不是
nil?
,它是
elseif
,接收器不是
nil
,它是
MegaGreeter
的一个实例。我知道了。只需将elseif更改为elsif。ruby版本是:ruby 1.9.3p484(2013-11-22修订版43786)[x86\u 64-linux]您是否阅读了错误消息?在错误消息中,它在哪里说
nil
没有
nil?
方法?无法理解的方法名称不是
nil?
,它是
elseif
,接收器不是
nil
,它是
MegaGreeter
的一个实例。我知道了。只需将elseif更改为elsif。ruby版本是:ruby 1.9.3p484(2013-11-22修订版43786)[x86\u 64-linux]您是否阅读了错误消息?在错误消息中,它在哪里说
nil
没有
nil?
方法?无法理解的方法名称不是
nil?
,它是
elseif
,接收器不是
nil
,它是
MegaGreeter
的一个实例。我知道了。只需将elseif更改为elsif。ruby版本是:ruby 1.9.3p484(2013-11-22修订版43786)[x86\u 64-linux]您是否阅读了错误消息?在错误消息中,它在哪里说
nil
没有
nil?
方法?无法理解的方法的名称不是
nil?
,它是
elseif
,接收者不是
nil
,它是
MegaGreeter
的一个实例。我知道了。只要将elseif更改为elsif。谢谢,我太粗心了。谢谢,我太粗心了。谢谢,我太粗心了。谢谢,我太粗心了。谢谢,我太粗心了。
Hello World!
Goodbye World. Come back soon.
Hello Zeke!
Goodbye Zeke. Come back soon.
Hello ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]!
Goodbye ["Albert", "Brenda", "Charles", "Dave", "Engelbert"]. Come back soon.
...
ri20min.rb:15:in `say_hi': undefined method `elseif' for #<MegaGreeter:0x00000001a2d4a0 @names=nil> (NoMethodError)
        from ri20min.rb:54:in `<main>'
if @names.nil?