代码之家  ›  专栏  ›  技术社区  ›  Saahil

如果键是字符串,如何在哈希中搜索特定键

  •  -5
  • Saahil  · 技术社区  · 7 年前

    我在哈希中找不到特定的键。从这里开始,

    titles = {'book1' => 396, 'book2' => 346}
    print 'What title would you like to search for? '
    item = gets.chomp
    

    我需要在哈希中搜索该项。请告诉我怎么做。我找到了其他方法,但当键是字符串时,它们不起作用。

    2 回复  |  直到 7 年前
        1
  •  1
  •   Eric Himmelreich    7 年前

    添加以下代码:

    puts titles[item]
    
        2
  •  -1
  •   user1934428    7 年前

    当用户输入哈希中不存在的密钥时,您没有指定预期的行为。

    titles[item]
    

    返回关联值,如果 item 是哈希中的键,否则返回nil。

    还请注意,您可以使用 titles.has_key?(item) ,哈希中是否存在密钥。如果您有一个哈希,其中一些值可以为零,那么这将非常有用。