为什么Ruby不返回没有“返回”的数组?

时间:2015-05-28 18:23:48

标签: ruby

def foo
  1,2
end

导致语法错误“意外”,“,期待关键字_end”

我认为这是有效的Ruby。怎么了?

2 个答案:

答案 0 :(得分:6)

你没有返回数组。

你应该有这个:

def foo
  [1, 2]
end

Ruby不期望使用逗号(,),因为它不是有效的语法。简单数组中的整数应该用括号括起来,并用逗号表示。

答案 1 :(得分:5)

如果您使用显式返回,则可以使用。

def foo
  return 1,2
end

但是这不会与隐式返回一起使用。要使其与隐式返回一起使用,您需要给它[1, 2]