for 文を使うかわりに、 each 文を使ってもよい。
配列.each{ 第 0 要素から順に取り出して変数に代入
|配列の要素をしまう変数|
配列の要素を使用して行う動作
}
例えば、 hash_pair.rb で、次のように書いてみよう。
shop.keys.each{|item| shop.keys で keys の並んだ配列
printf("%s\t%d\n", item, shop[item]) この配列の要素一つ一つを
} 仮引数 item に代入する
keys method あるいは values method を使うと、 Hash 配列に含まれる key や value を配列に埋め込ませることができる。
p shop.values
を
hash_pair.rb
に埋め込んだ結果は何か。
また、
p shop.keys
ではどうか。
配列の入れ替えを行うには、sort method を使えば良かった。 reverse method も組み合わせて、 小さな順、大きな順ではそれぞれ以下のように並べ替えることができた。
p shop.values.sort を hash_pair.rb に埋め込んだ結果は何か。 また、p shop.values.sort.reverse ではどうか。
printf 文によりきれいに出力される。 またその出力順は文字コード順であることが分かる。