ただいま整理中。
Blogspot (Blogger?) に移行しました!
タイムライン | 技術系 | TIPS | ライフハック系 | その他 | 左記カテゴリ以外は、右の欄の下のタグクラウドへ!
.

2008年01月29日

Ruby: 数字に桁区切りを入れたい(その2)

※[ブックマーク]ボタンの中に delicious, reddit, digg, Google+(G+) のボタンもあります。
前回は、数字を区切るためのインスタンス・メソッドを作成した。


今回はこのクラスPriceに、コンストラクタと比較演算メソッドを、追加しよう。
Price.newの引数として、文字列、または、整数をとるものとする。

    public
    include Comparable
   
    #Constructer
    #
    def initialize( p_ )
        @val_orig = p_.to_s;
       
        @val_s_wo_d = del_digit_delimiter( "#{@val_orig}" );
        @val_s_w_d  = add_digit_delimiter( @val_s_wo_d );
       
        @val_i = @val_s_wo_d.to_i;
    end
   
    def <=>(other)
        self.val_i <=> other.val_i;
    end


コンストラクタ:initialize では、4種類のインスタンス変数: val_orig, val_s_wo_d, val_s_w_d, val_i; が生成される。

それぞれ、オリジナルの値、桁区切りなしの値、桁区切りありの値、数値変換時の値、となる。


インスタンス・メソッド:<=> は、クラスPriceのオブジェクト同士の大小比較を行うために、定義した[1]。


References:
[1] 『プログラミングRuby 第2版 言語編』; 'Mixin', pp.101



《スポンサードリンク》



posted by もふもふ at 00:25 | ロンドン 🌁 | Comment(0) | TrackBack(0) | カテゴリ: 技術 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック
トラックバックURLは,"Trackback(x)"のリンクを押すと表示されます.
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。