【发布时间】:2023-04-03 08:33:02
【问题描述】:
来自我的read,
something {|i| i.foo }
something(&:foo)
是等价的。所以如果 x = %w(a b c d),为什么不是下面的等价物:
x.map {|s| s.+ "A"}
x.map {&:+ "A"}
?
第一个按预期工作(我得到 ["aA","bA","cA","dA"]),但无论我尝试什么,第二个都会出错。
【问题讨论】:
-
你不能将参数传递给那些 Symbol#to_proc 调用。