将数组中的元素格式化为字符串

时间:2014-09-08 18:50:37

标签: ruby arrays yield enumerable

如果我有这样的数组:

array = ["A", "P", "P", "L", "E"]

我想用数组的元素来构建一个句子。 例如“我想要一个APPLE”

我想我看到使用yield方法做了类似的事情。 但不确定如何在这种情况下使用它。

如果我只是将数组解析为字符串:

the_word = array.to_s

它仍然显示为字符串数组。 [“A”,“P”,“P”,“L”,“E”]

所以我的问题是如何获取数组的元素并将元素格式化为字符串, 没有多次迭代整个句子?

2 个答案:

答案 0 :(得分:4)

使用join()

1.9.3-p547 :001 > array = ["A", "P", "P", "L", "E"]
 => ["A", "P", "P", "L", "E"] 
1.9.3-p547 :002 > array.join()
 => "APPLE" 

或者不加括号使用它(感谢Anthony的评论):

1.9.3-p547 :003 > array.join
 => "APPLE" 

答案 1 :(得分:2)

还有另一种方法Array#*,名为 重复 - 使用String参数,相当于ary.join(str)

arup@linux-wzza:~> pry
[1] pry(main)> array = ["A", "P", "P", "L", "E"]
=> ["A", "P", "P", "L", "E"]
[2] pry(main)> array * ""
=> "APPLE"
[3] pry(main)>