为了把事情放在上下文中,我是一个红宝石初学者。
所以,我正在做一个简单的练习:创建一个ruby程序来反转输入句子中的单词。
这就是我所做的:
def reverse_words(sentence)
reversed_sentence = []
words = sentence.split(" ")
i = 0
while i < words.length
reversed_sentence = words[i] + reversed_sentence
i += 1
end
return reversed_sentence.join(" ")
end
# I make a simple test by adding:
puts reverse_words("Hi how are you")
当我运行该程序时,它说:
reverse_words_ex.rb:7:reverse_words': undefined local variable or method
i&#39; for main:Object(NameError)
来自reverse_words_ex.rb:15:在`&#39;
我不明白他们为什么说我未定义。我真的很感激这里的一些帮助。 感谢
答案 0 :(得分:4)
def reverse_words(sentence)
return sentence.split(" ").reverse.join(" ")
end
.split(" ")
在每个空格字符处拆分String,返回一个数组.reverse
正在颠倒数组中元素的顺序,返回数组.join(" ")
正在使用空格字符连接Array的元素,返回String