這篇文章主要介紹了Ruby中關於hash的基本使用方法,包括雜湊的建立和一些內建方法的使用,需要的朋友可以參考下
雜湊鍵 - 值對的集合,類似這樣:"employee" => "salary"。它類似於數組,除了索引是通過任意鍵的任何對象的類型,而不是一個整數索引。
順序遍曆一個雜湊鍵或值要麼可能看起來是任意的,一般不會在插入順序。如果訪問的鍵的雜湊值不存在,該方法將返回nil。
建立雜湊:
使用數組中,有各種各樣的方法來建立雜湊值。可以 new 類方法建立一個空的hash :
?
還可以使用 new 建立雜湊,這是一個預設值,否則只是 nil:
複製代碼 代碼如下:
months = Hash.new( "month" )
or
months = Hash.new "month"
當訪問任何在雜湊鍵,有一個預設值,如果鍵或值不存在,訪問雜湊表將返回預設值:
?
| 1 2 3 4 5 6 |
#!/usr/bin/ruby months = Hash.new( "month" ) puts "#{months[0]}" puts "#{months[72]}" |
這將產生以下結果:
?
| 1 2 3 4 5 6 7 8 9 |
month month #!/usr/bin/ruby H = Hash["a" => 100, "b" => 200] puts "#{H['a']}" puts "#{H['b']}" |
這將產生以下結果:
?
可以使用任何Ruby對象作為鍵或值,甚至數組,那麼下面的例子是一個有效
?
雜湊內建的方法:
我們需要有一個Hash對象執行個體調用雜湊方法。正如我們所看到的,下面是Hash對象的方式來建立一個執行個體:
?
| 1 2 3 4 5 |
Hash[[key =>|, value]* ] or Hash.new [or] Hash.new(obj) [or] Hash.new { |hash, key| block } |
這將返回一個新的雜湊值具有給定的對象填充。現在使用建立的對象,我們可以調用任何可用執行個體方法。例如:
?
| 1 2 3 4 5 6 7 8 9 10 |
#!/usr/bin/ruby $, = ", " months = Hash.new( "month" ) months = {"1" => "January", "2" => "February"} keys = months.keys puts "#{keys}" |
這將產生以下結果:
?