Ruby 初心者スレッド Part 34at TECHRuby 初心者スレッド Part 34 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト550:デフォルトの名無しさん 10/02/15 11:04:17 data = Array.new data = [1, 2, [3, 4, [5]], 6] 多次元配列のデータがあります。 このデータを、次のように1次元配列に格納しなおしたいです。 p data => [1, 2, 3, 4, 5, 6] 多次元配列のデータは、今回のサンプルでは3次元ですが、 実際のデータは何次元になるかわかりません。 そのため、再帰の必要性があると思い次のようなメソッドを考えました。 def split_ary(ary) local_ary = Array.new return local_ary if ary.empty? ary.each do |a| if Array == a.class split_ary(a) else local_ary << a end end end 良く考えれば当然なのですが1次元にできません。。。 p split_ary(data) => [1, 2, [3, 4, [5]], 6] 1次元にするには、どのように改善すれば良いでしょうか。 551:デフォルトの名無しさん 10/02/15 11:17:25 [1, 2, [3, 4, [5]], 6].flatten 552:デフォルトの名無しさん 10/02/15 11:21:42 >>551 おおお!! このようなメソッドが既にあるのですね。 ありがとうございます! 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch