0

我有

board_a1 = " [ ] "
board_a2 = " [ ] "
board_a3 = " [ ] "

等我提示用户,并获得输入:

puts "Choose your square"
user_input = gets.chomp.downcase

如果用户输入"a2",我需要重新分配board_a2

board_a2 = " [X] "

我将如何匹配用户输入以重新分配正确的棋盘格?我想我可以像这样连接这些片段:

board_assignment = "board_#{user_input}"

然后使用

board_assignment = " [X] "

但是board_assignment != board_a2。这是一个新变量。我需要在用户输入后立即根据用户输入重新分配正确的变量。是否有一些特殊的语法可以连接可以表示现有变量的字符串?你怎么称呼这种情况,我将如何获得我的动态变量集?

4

1 回答 1

2

您应该使用包含哈希的单个变量,将空间的名称映射到其当前状态:

board = {
  "a1" => " [ ] ",
  "a2" => " [ ] ",
  "a3" => " [ ] "
}

其余的变得不言自明。当用户输入"a2"时,修改 处的值board["a2"]

于 2013-10-28T14:51:14.733 回答