这无疑是一个奇怪的问题,但我需要基本清空数组中的每个项目(但保留项目本身)。
例如,如果我有这个数组:[ 0, 5, 4, 7, 1 ]
我需要将其更改为:[ '', '', '', '', '']
我使用的是Ruby 1.9.3。
我使用的某些图表软件需要一个数组用于标签,隐藏这些标签的唯一方法是将相应的项目留空。是的,跛脚。
答案 0 :(得分:5)
Enumerable#map
用调用块的结果替换每个元素:
array = [ 0, 5, 4, 7, 1 ]
array.map { '' }
#=> ['', '', '', '', '']
如果你想改变原文(如果我理解你的问题,这正是你做的不想要做的那样),那么使用#map!
array.map! { '' }
array
#=> ['', '', '', '', '']