【发布时间】:2013-09-10 23:04:15
【问题描述】:
我一直在谷歌搜索并没有得到map 方法的真正用法。这是我在控制台中尝试过的。
a = ["kevin","john","ryan"]
a.each {|i| puts i.upcase}
上面将打印 caps 中的值。
a = ["kevin","john","ryan"]
a.map {|i| puts i.upcase}
这也会打印 caps 中的值。那么 map 方法有什么特别之处呢?并且任何人都可以引导我找到该主题的良好来源,以便更好地理解。
【问题讨论】:
-
您是否尝试过阅读有关这些方法的文档?例如:Enumerable#map.
-
这是一个
ruby的问题,所以我更改了标签和标题。 -
@SergioTulentsev:抱歉,我对 ruby 和 rails 很陌生,文档对我来说不是很清楚......
-
只是好奇 - 您正在阅读哪些不清楚的文档?
-
在
map的情况下,它将执行块中的内容并执行puts,就像each一样,但它也会收集您的puts语句的返回值放入一个数组并作为结果返回。该结果对您毫无用处,因此在这种情况下使用map毫无意义。您将获得nils 的数组。each执行块内的内容而不收集任何结果。
标签: ruby