2011-12-20 112 views
3

我有一个数组红宝石字符串连接

books = ["Title 1", "Title 2", "Title 3"] 

我需要通过这个数组进行迭代,并得到这样一个变量:

@books_read = "Title 1 \n Title 2 \n Title 3" 

我试过这段代码:

books.each do |book| 
    @books_read += "#{book} \n" 
end 

puts @books_read 

但是,+运算符不会连接字符串。请任何线索。

干杯!

+0

你是什么意思“+”运算符不连接字符串?这正是它所做的! (请参见[String#+](http://www.ruby-doc.org/core-2.1.0/String.html#method-i-2B)) – Ajedi32 2014-03-04 18:53:35

回答

2

您可以使用joinbooks.join(" \n ")

+1

确保使用双引号,否则\ n是逃过一劫。 – 2011-12-20 07:35:44

+0

谢谢,这就像一个魅力! – verdure 2011-12-20 07:41:10

4

您可以使用Array#joinbooks.join(" \n ")

加入(SEP = $)→STR

返回由阵列的每个元素转换成 串,由分离月创建的字符串。