我正在使用Chris Pine的学习编程,并且我很难接受相对简单的挑战,即以随机单词列表的形式获取用户输入,然后在数组中按字母顺序排列.关于这个挑战的问题之前已经提出过,但是我无法在SO上找到我的具体问题,所以如果它是重复的,我很抱歉.
puts "Here's a fun trick. Type as many words as you want (one per line) and
I'll sort them in...ALPHABETICAL ORDER! Hold on to your hats!"
wordlist = Array.new
while (userInput = gets.chomp) != ''
wordlist.push(userInput)
end
puts wordlist.sort
Run Code Online (Sandbox Code Playgroud)
虽然这样做,但我试图弄清楚如何在没有区分大小写的情况下按字母顺序排列数组.这很难绕过我的脑袋.我了解到,casecmp但这似乎是一种比较特定字符串的方法,而不是字符串数组.
到目前为止,我一直在尝试这样的事情:
wordlist.to_s.downcase.to_a.sort!
Run Code Online (Sandbox Code Playgroud)
除了看起来不好之外,它还有多种原因,包括Ruby 2.0不允许将字符串转换为数组.