2011-08-01 9 views
1

私はXMLファイルからデータを読み込み、文字列から整数に変換していますが、データを処理しようとすると、オブジェクトはString型であると主張しています。私はすべての要素を整数型に変換するので、私には意味をなさない。ruby​​型質問

#converts the string data array to an integer array 
def self.barify_data(data) 
    data.each{ |i| i.to_i() } 
end 

data = BarChart.barify_data(data) 
data.each {|d| puts d.class } 

この出力:変換イマイチが起こって、なぜ

String 
String 
String 
String 
String 
String 
String 
String 
String 
String 
String 
String 
String 

は誰も教えてもらえますか?

ありがとうございました。

答えて

8

#eachメソッドはすべての要素に対してブロックを実行しますが、元の要素を返します。あなたはおそらく、あなたに感謝#map

+0

を探している

、私はそれは、単純な何かを知っていました;私はそれを理解できませんでした。 –

+0

具体的には、 'Enumerable#map! 'メソッドです。 – Swanand

+0

OPは変更された配列を返し、それをデータに再割り当てします。 #mapはこの状況でうまくいくでしょう。 –