无法反转 Ruby 中数组中的每个单词(没有内置函数 reverse)

Unable to reverse each word in array in Ruby ( Without built-in function reverse)

我正在尝试反转数组中的每个单词,这是我尝试过的。我无法弄清楚为什么数组 (word.size-1..0) 的这段代码不会在新的 arr[] 中给我任何结果。 任何帮助将不胜感激。

words  = ["hello", "world", "programmer", "ama", 'abc']
def reverse_words words
  arr = []
  words.each do |word|
    (word.size-1..0).each do |alphabet|
      arr << word[alphabet]
    end
  end
  arr
end 

您正在尝试创建一个起始值高于结束值的范围,并且 Ruby 将其视为空数组,例如:

(5..0).to_a
=> []

在此示例中 Ruby 无法找到大于 5 且小于 0 的数字,因此它 returns 一个空数组。

您可以尝试使用以下代码从大数到小数进行迭代:

(5).downto(0).each do |number|
  ...
end