如何在Ruby

时间:2016-02-03 18:30:58

标签: ruby hash

我有一个哈希:

guide_book = {"Delhi" => "011", "Noida" => "0120", "Indore" => "0731", "beas" => "458", "goa" => "835"}

我想将用户输入字符串city_name与哈希表中的键匹配。如果输入与任何键匹配,则应打印代码,否则应打印无效城市的注释。

这是我写的代码:

puts "Please enter the city name"
city_name = gets.chomp
puts "Thank You"
puts "The available cities in the city guide are"
guide_book.each{|k,v| puts k}

2 个答案:

答案 0 :(得分:1)

guide_book.default = "invalid city"
puts guide_book[city_name]

答案 1 :(得分:0)

您可以使用has_key?

检查哈希是否包含密钥

类似的东西:

guide_book.has_key?(city_name)

修改 :(感谢Jordan提供建议)

您可以使用Hash#key?方法,因为Hash#has_key?已被弃用(请参阅this)。