为了学习LIFO FIFO,我正在尝试制作一种反转字符串的方法
#!/usr/bin/env ruby
def reverse(string)
reverse = []
string.split.each do | char |
reverse.unshift(char)
end
puts reverse.join
end
reverse("Hello")
但是,当我执行此操作时,控制台只会返回“ Hello”。不应该取消移位返回“ olleH”吗?
即对于每个字符,它依次排列并添加到反向数组的开头。
split
没有按照您的想法去做(默认情况下,它在空格处分割,而不是在每个字符上分割):
> "Hello".split
#=> ["Hello"]
您可能想要chars
:
> "Hello".chars
#=> ["H", "e", "l", "l", "o"]
您也可以只使用以下each_char
方法:
string.each_char do |char|
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句