0

在 Ruby 中,假设我们有一个二维数组,为什么这个语法很好:

array.each do |x|
  x.each do |y|
    puts y
  end
end

但这不是:

array.each{|x|.each{|y| puts y}}

有任何想法吗?谢谢

4

2 回答 2

4

这应该没问题array.each{|x| x.each{|y| puts y}}

您忘记先提及 x。

.应该是左副操作员。如果您在左侧有注释 - 这是一个错误。

于 2013-03-19T11:44:53.890 回答
0

如果你仔细do...end替换你的块,你会发现你的第二种形式和第一种形式一样。但是完成与整个双循环相同的事情。{...} puts array

如果我可以提供一些礼貌的元建议,那么您今天提出的两个 Ruby 问题看起来好像您可能被要求用您不知道的语言做一些事情,并且感到沮丧。这是可以理解的。但好消息是,与许多其他语言相比,Ruby 是建立在非常少量的部分之上的。如果您花一点时间真正熟悉 Array 和 Hash,您会发现此后的进展要顺畅得多。

于 2013-03-19T13:34:06.700 回答