16
A
答えて
31
単語テーブル、辞書、およびマップは、しばしば(データ構造の文脈で)同義語として使用されます。ハッシュテーブル/ハッシュマップは、テーブル/辞書/マップの1種類です。
{0}
は、その引数を無視して番号0を返すブロック(匿名関数)です。Hash.new
に与えられたブロックは、キーがハッシュマップに見つからない場合にデフォルト値を生成するために呼び出されます。
I.e. h = Hash.new {0}
を実行してh["key that does not exist"]
を実行した場合、nil
の代わりに0が返されます(これは{0}
なしで取得できます)。この場合、デフォルト値が不変で、キーに依存しない場合は、Hash.new
のブロック形式を使用する必要はありません。Hash.new(0)
をデフォルト値として0に設定することができます。 Rubyで
7
辞書はちょうどキーを値にマップします。これを達成する方法はたくさんあります。ハッシュテーブルがその1つです。
16
ハッシュは{0}があれば、あなたが存在しなかったキーを呼び出すように評価されることになるブロックであり、それはデフォルト値のようなものだキー、valueストア
h = Hash.new
h['one'] = 1
h['one'] #=> 1
h['two'] #=> nil
です。
h = Hash.new {0}
h['one'] #=> 0
h = Hash.new {|hash,key| "#{key} has Nothing"}
h['one'] #=> "one has Nothing"
3
辞書は概念的なインターフェイスです。ハッシュテーブルは具体的な実装です。
関連する問題
- 1. IronRubyハッシュto C#辞書
- 2. json辞書とハッシュの違い
- 3. ハッシュマップ、ハッシュセット、ハッシュ辞書の違いは何ですか?
- 4. OOPの辞書オブ辞書ですか?
- 5. Pythonで不変の辞書をハッシュする
- 6. Rubyハッシュ文字列をPython辞書に変換する
- 7. 辞書のリストから辞書
- 8. 私のセット/辞書ベースのスクリプトが吃音しています...辞書の再ハッシュ?
- 9. Tensorflow辞書テンソルでの辞書検索
- 10. ユーザー辞書のリソース辞書
- 11. 辞書のpython辞書
- 12. Python辞書のハッシュ検索はどのように機能しますか?
- 13. VBSのQTPバージョンに辞書の辞書がありますか?
- 14. 辞書を辞書に追加しますか?
- 15. Pythonで辞書の辞書にアクセスする
- 16. 条件付き辞書のPython辞書
- 17. 辞書を考える辞書
- 18. 辞書<string、string> with child辞書
- 19. 辞書
- 20. 辞書
- 21. 辞書
- 22. 辞書
- 23. 辞書?
- 24. 辞書
- 25. 辞書
- 26. 辞書
- 27. リストと別の辞書からPythonで辞書を作成する方法
- 28. UITextCheckerはどの辞書ですか?
- 29. 双方向辞書ですか?
- 30. ReCaptchaの "カスタマイズオプション辞書" JSONですか?
"ボーナス:" - 私は何を勝つのですか?ステーキナイフ? –
大きな自我??? –
実際には、辞書にはキーがソートされています。ルビーのハッシュはありません – Mauricio