Я пытаюсь построить игру «камень, бумага, ножницы», и, глядя на код других людей, я заметил, что некоторые используют to_sym. У них есть хеш со строкой для ключа и массивом с двумя строковыми элементами для элементов в качестве ключа. Я пытался выяснить, почему они это сделали, но я потерян.
Пример:
WIN_CONDITIONS = { rock: ["lizard", "scissors"],
paper: ["rock", "spock"],
scissors: ["paper", "lizard"],
lizard: ["paper", "spock"],
spock: ["scissors", "rock"]
}
def win?(first, second)
WIN_CONDITIONS[first.to_sym].include?(second)
end