【发布时间】:2020-12-13 04:02:28
【问题描述】:
这是我目前拥有的代码
def square_array(array)
array.each do |i|
i ** 2
end
end
我知道这不正确,有人可以向我解释一下这个过程吗?
【问题讨论】:
-
你的代码唯一的问题是你对每个数字求平方,然后不做任何事情,然后它消失在以太中。您是否考虑过将方块存放在某个地方?
-
您正在丢弃这些值。
each和map之间的唯一区别是each只是运行块并且不对其返回值做任何事情,而map将返回值收集到一个数组中。我不知道您为什么要避免为此使用map。 -
现实世界中哪些可能的场景导致您需要避免
map?这是最好、最正确的方法。 -
谢谢大家的回复,我在课堂上做这件事,这就是练习所要求的。
-
我记得在 basic 和 c 中的练习要求在不使用 FOR 的情况下进行循环。