Доступ к хеш-значению с помощью переменной
Как получить доступ к хеш-значению с помощью переменной? Вот что у меня не работает:
DHASH = { 0 => -0.8,
1 => -0.54,
2 => -0.32,
3 => -0.14,
4 => 0,
5 => 0.1 }
print "Enter number "
num = gets.chomp()
puts "Value: DHASH[#{num}]"
Выход:
Enter number 2
Value: DHASH[2]
Что я хочу:
Enter number 2
Value: -0.32
1 ответ
Решение
Попробуй это:
print "Enter number "
num = gets.chomp().to_i
puts "Value: #{DHASH[num]}"
Доступ к хеш-значениям с помощью переменной в Ruby удивительно прост! Вы просто убедитесь, что переменная имеет правильный ключ, а затем используете переменную вместо ключа. В вашем случае число, которое вы получаете, будет строкой, и вам нужно, чтобы оно было целым числом, поэтому вам нужно превратить его в целое число. И вам нужно исправить интерполяцию строк.