Я написал следующий «метод провозглашения». Он стремится взять элементы из массива и поставить «!» за.Метод прокламации не ставит "!" за каждым элементом
class ArrayModifier
attr_accessor :userArray
def initialize(userArray)
@userArray = userArray
end
def exclaim
newArray = []
userArray.each do |num|
newArray << "#{num}!"
end
newArray
end
end
Когда я запускаю его на этом массиве
a = ["Henk", "Marc"] I get
=> ["Henk!", "Piet!"]
, который хорошо выглядит. Я получаю сообщение об ошибке Rspec хотя
RSpec :: Ожидания :: ExpectationNotMetError
expected: "Hey! ho! let's! go!"
got: "Hey! ho! let's! go"
И там, кажется, не помещая '!' за последним элементом ... Любые идеи о том, откуда это происходит?
могли бы вы показать нам тест? –
Hahaha взгляните на [Array # collect] (http://ruby-doc.org/core-1.9.3/Array.html#method-i-collect), поскольку документация является именно вашим прецедентом. – engineersmnky
Есть лучший способ выразить свой метод 'exclaim'' array.map {| element | "#{элемент}!" } '. Однако ваш код должен работать. Так происходит что-то еще. Покажите нам тест, как указано @UriAgassi. – Mohamad