Ruby 初心者スレッド Part 34
at TECH
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドの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 おおお!! このようなメソッドが既にあるのですね。 ありがとうございます!
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
5387日前に更新/176 KB
担当:undef