我收到此错误:
SyntaxError((irb):8:语法错误,意外的tSTRING_BEG,期望']')
Person.new“尼克”,
(irb):8:语法错误,意外的“,”,期望输入结束
Person.new“尼克”,
执行以下代码时:
application/json
我了解如何解决它,我只是想知道为什么会这样。
答案 0 :(得分:3)
我认为这是因为ruby在解释Person.new
及其参数之间的空格时感到困惑。在名称周围使用括号()
:
a = [
Person.new("Nick"),
Person.new("James")
]
答案 1 :(得分:1)
问题是:
我了解如何解决它,我只是想知道为什么会发生
没有括号是不明确的:它可能同样意味着
[Person.new("Nick"), Person.new("James")]
或[Person.new("Nick", Person.new("James"))]
答案 2 :(得分:0)
如果您运行a = ["hello" "there", "some" "where"]
,它将返回=> ["hellothere", "somewhere"]
之所以会这样,是因为它试图将字符串附加到类上!