我在Ruby中使用正确的循环

时间:2015-09-17 10:23:23

标签: ruby

我正在尝试输入一个字符串并输出相同的字符串,每个字母在字母表中都有一个字母。所以“嗨”会变成“ij”。这是我到目前为止的代码,我不知道为什么它不起作用。它直接跳到“这不是字母表中的字母”
这是我的代码:

def LetterChanges(str)

  count = 0

 x = str.split(//).each do |com|

   my_array = ('a'..'z').to_a

    if my_array.include? com
      if my_array[count] != com
       count += 1
      else
        puts my_array[count + 1]
      end

   else
      puts "this is not a letter of the alphabet"
   end

    end

end

LetterChanges("hello world")

1 个答案:

答案 0 :(得分:0)

您对此方法的看法如何?

def LetterChanges(str)
  str.split(//).each { |i| i.next! if (('a'..'z').include? i) }.join()
end