这生活在一次被称为“游戏”的方法中。进入while循环后,您将一直呆在那里直到退出该过程。现在,我正在尝试使用case语句将用户定义的字符串转换为最后传递的变量以调用下一个方法,所有这些都在while循环中。
def play
next_action = @start # comes from an initialize function earlier in script
while true
case next_action
when beginning
next_action = beginning
when "instruct"
next_action = instructions
when "display"
next_action = display_users
else
puts "Unknown command."
next_action = display_users
end
puts "\n----------"
next_action = method(next_action).call
end
end
第一个问题:case语句无法识别除最后一个选项之外的任何选择。
第二个问题:这会导致循环结束,跳转到最后一个被调用的方法,然后退出进程。
感谢任何帮助或建议。
答案 0 :(得分:1)
查看是否更改
next_action = @start
为:
next_action = @start.chomp
让你更进一步。
答案 1 :(得分:0)