- # Ruby入門 > Hashクラス(ハッシュ)
ハッシュからキーと値を取り出しイテレータ処理
スポンサーリンク
スポンサーリンク
ライフスタイル関連のコンテンツ
お金 | 仕事 | 勉強 | プライベート | 健康 | 心
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般
お金 | 仕事 | 勉強 | プライベート | 健康 | 心
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般
ハッシュから、キーと値を取り出して、イテレータで処理する例を見てみます。
sort文の書き方とか、Rubyでは直感的に日本語を話すように書ける気がします。
スポンサーリンク
#puts "name => height のハッシュ" hash = { "Takasi" => 175, "Youko" => 162, "Konta" => 183, "Fumiko" => 157 } p hash.keys p hash.values puts "--- eachとキーで回す" hash.keys.each{|name| print "#{name} is #{hash[name]} / " } puts puts "--- each_key" hash.each_key{|i| print "#{i} --- #{hash[i]} / " } puts puts "--- キーと値で回す" hash.each{|key, value| print "#{key} => #{value} / " } puts puts "--- each_value" hash.each_value{|i| print "#{i}, " } puts puts "--- 身長の低い順" hash.keys.sort{|a, b| hash[a] <=> hash[b] }.each{|name| puts "#{name}'s height is #{hash[name]}" } puts "--- 身長の高い順" hash.keys.sort{|a, b| hash[b] <=> hash[a] }.each{|name| puts "#{name}'s is #{hash[name]} cm" } puts "--- キーと値を両方取り出し" p hash.to_a # キーと値を一要素とする配列になる hash_ta = hash.to_a p hash_ta.pop p hash # 元のまま p hash_ta # popで破壊されている puts "--- whileとshiftで回す" while a = hash_ta.shift puts "#{a[0]} => #{a[1]}" end
実行結果。
["Konta", "Youko", "Fumiko", "Takasi"] [183, 162, 157, 175] --- eachとキーで回す Konta is 183 / Youko is 162 / Fumiko is 157 / Takasi is 175 / --- each_key Konta --- 183 / Youko --- 162 / Fumiko --- 157 / Takasi --- 175 / --- キーと値で回す Konta => 183 / Youko => 162 / Fumiko => 157 / Takasi => 175 / --- each_value 183, 162, 157, 175, --- 身長の低い順 Fumiko's height is 157 Youko's height is 162 Takasi's height is 175 Konta's height is 183 --- 身長の高い順 Konta's is 183 cm Takasi's is 175 cm Youko's is 162 cm Fumiko's is 157 cm --- キーと値を両方取り出し [["Konta", 183], ["Youko", 162], ["Fumiko", 157], ["Takasi", 175]] ["Takasi", 175] {"Konta"=>183, "Youko"=>162, "Fumiko"=>157, "Takasi"=>175} [["Konta", 183], ["Youko", 162], ["Fumiko", 157]] --- whileとshiftで回す Konta => 183 Youko => 162 Fumiko => 157
スポンサーリンク
- - 関連記事 -
- ハッシュの値でソートする
- ハッシュを調べる
- ハッシュの作成
- ハッシュ(連想配列)
スポンサーリンク