読者です 読者をやめる 読者になる 読者になる

【Ruby】 配列中の文字列を数値に変換するメソッドを配列クラスに追加する

Ruby

なんて長ったらしいタイトル(笑)
少し前に似たような記事を書いたのですが、ちょっと修正したので再投稿。


前回のメソッド↓

#配列に文字列を格納
strs = ["1", "2", "3", "4"]
#配列の各要素を数値変換して新しい配列に格納する
nums = strs.map { |str| str.to_i}

#変換後の配列要素
p nums   #=>[1, 2, 3, 4]


改良したいポイント
・配列のメソッドとして追加したい
・簡単にArray.to_iのようにするだけで変換を実行したい


結論

#ファイル名
#Array-to_i.rb

#配列クラスにメソッドを追加
class Array
    def to_i
        self.map{|i|
            i.to_i
        }
    end
end

これで配列にメソッドが追加されました。

使い方はこちら

#追加したメソッドを適用
require 'Array-to_i'

#文字列型の配列
strs = ["1", "2", "3", "4"]

#数値変換
nums = strs.to_i


p nums      #=> [1, 2, 3, 4]