#16 Rubyで学ぶ辞書型(マップ)の基本

Rubyで名前と値の組み合わせを扱うには、「ハッシュ」と呼ばれる仕組みを使います。この記事では、Rubyにおける辞書に相当する使い方を解説します。

ハッシュを作ってみる

scores = { "太郎" => 90, "次郎" => 85 }

キーがシンボル(以前の記事で触れた`:name`のような値)の場合は、より簡潔に書けます。

person = { name: "太郎", age: 20 }

値を取り出す

puts scores["太郎"] puts person[:name]

存在しないキーへの対応

存在しないキーにアクセスすると`nil`が返ります。`fetch`を使うと、存在しない場合にエラーにするか、既定値を指定するかを選べます。

puts scores.fetch("三郎", 0)

全てのキーと値を順に処理する

scores.each do |name, score| puts "#{name}: #{score}" end

Rubyならではの注意点

文字列のキー(`"name" => `)とシンボルのキー(`name: `)は、見た目は似ていますが別のものとして扱われます。`person["name"]`と`person[:name]`は異なる結果になるため、どちらのキーで作ったハッシュかを意識しましょう。

まとめ

Rubyのハッシュ(辞書)は`{}`で作り、文字列またはシンボルをキーにできます。2つのキーの書き方の違いに注意しましょう。


本ページはプロモーションを含みます。

参考書籍(PR)

Rubyをもっと学びたい方には「プロを目指す人のためのRuby入門[改訂2版]」がおすすめです。

コメント

このブログの人気の投稿

#11 Rustで学ぶエラーハンドリングの基本

#16 TypeScriptで学ぶ辞書型(マップ)の基本

#19 Goで学ぶテスト(単体テスト)の基本