怎么会让这更优雅

时间:2014-10-15 18:25:18

标签: ruby

我在应用程序中有这段代码,并被告知要使它更优雅,但不知道如何让它更好

self.join(" ").split(" ").uniq

任何建议都将不胜感激。

self是一个数组

1 个答案:

答案 0 :(得分:1)

flat_map(&:split).uniq

  • flat_map在数组上运行一个块,并连接所有生成的数组。
  • flat_map(&:split)相当于在每个参数上调用s.split,这恰好与s.split(' ')完全相同,(除非您重新定义$;,但请不要'那样做。)。
  • 我们不需要self,所以我们省略它。