def get_input(*options)
puts "Choose one:"
options.each do |option|
puts "#{option}"
end
choice = gets.chomp.to_s
options.each do |option|
if choice.include?(option.to_s)
return choice
end
end
puts "Command not found..."
get_input(options)
end
如果用户输入无效命令,则会再次输出可用命令,但当前值包括[,]。我怎么能避免这种情况。
答案 0 :(得分:1)
您在get_input
的递归调用中错过了一个splat:
puts "Command not found..."
get_input(options)
end
应该是:
puts "Command not found..."
get_input(*options)
end