構造体の美学2

2015年7月21日 15:55

※この記事は読者によって投稿されたユーザー投稿のため、編集部の見解や意向と異なる場合があります。
また、編集部はこの内容について正確性を保証できません。

ヒューマンリソシア株式会社はコラム「構造体の美学2」を公開しました。

では、構造体を利用したプログラムを作ってみましょう。以前、作成した電話帳プログラムのデータ構造をハッシュを利用したものから構造体を利用したものに変えてみました。
1 # -*- coding:utf-8 -*-
2
3 Address = Struct.new(:name, :phone)
4 addresses=[
5   Address.new(“Yoshitake SHIMO”, [“03-1234-5678″, “080-1234-5743″]),
6   Address.new(“Takayuki NISHIO”, [“03-6345-4578″]),
7   Address.new(“Masataka AIKAWA”, [“03-3412-5908″, “070-6789-0987″]),
8 ]
9
10 puts “検索(:name)”
11 key=”shimo”
12 puts addresses.select {|addr| addr[:name] =~ /#{key}/i}
13 puts “検索(:phone)”
14 key=”^0[8,7]0″
15 puts addresses.select {|addr| addr[:phone].find {|phone| phone =~ /#{key}/}}
16 puts “ソート(First Name)”
17 puts addresses.sort {|a,b| a[:name].split(/\s/)[1] => b[:name].split(/\s/)[1]}

この続きは以下をご覧ください
http://resocia.jp/column/353/

この記事をシェアしてほしいパン!

人気記事トップ10

人気記事ランキングをもっと見る