我在从二维哈希数组中检索信息时尝试使用用户生成的变量作为键:
warehouse["warehouse_b"][:a6]
为什么此代码有效:
location = :a6
warehouse["warehouse_a"][location]
虽然这段代码没有?
location = gets.chomp # User inputs :a6
warehouse["warehouse_a"][location]
答案 0 :(得分:3)
使用gets
方法,您会得到一个字符串。在您的情况下,位置必须是一个符号。你可以做到
puts warehouse[hash][location.to_sym]
或
location = gets.chomp.to_sym