2011-12-20 2 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 

Но оператор + не связывает строки. Любые указания на это, пожалуйста.

Cheers!

+0

Что значит оператор '+' не объединяет строки? Это именно то, что он делает! (См. [String # +] (http://www.ruby-doc.org/core-2.1.0/String.html#method-i-2B)) – Ajedi32

ответ

2

Вы можете использовать join: books.join(" \n ")

+1

Обязательно используйте двойные кавычки, иначе \ n является убежали. –

+0

Спасибо, это сработало как шарм! – verdure

4

Вы можете использовать Array#join: books.join(" \n ").

присоединиться (сентябрь = $,) → ул

Возвращает строку, созданную путем преобразования каждого элемента массива в строки, разделенные сен.

Смежные вопросы