Ruby 初心者スレッド Part 30at TECHRuby 初心者スレッド Part 30 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト469:デフォルトの名無しさん 09/08/28 16:30:16 result[%w[DRAW WIN LOSE][point<=>0]]+=1 470:デフォルトの名無しさん 09/08/28 18:07:31 配列で要素が重複していたときに重複している要素の値が知りたいのですが 簡単な方法はないでしょうか? [1,2,3,4,5,6,3]であれば3が知りたいです 重複は1種類が1回だけしていると仮定してかまいません 471:デフォルトの名無しさん 09/08/28 18:30:43 ありそうでないんだよね、そういう機能 重複は全部消去するのが基本 「配列の構成要素を uniq で決定し、それと同じ値を持つ最初の場所を探してその要素を配列から消す」 という手順でやるとこうなる arr = [1, 2, 3, 4, 5, 6, 3] arr.uniq.each{|e| arr.delete_at(arr.index(e))} p arr [3] これだと arr が失われてしまうので他の人の案待つか事前に複製でもしとけ 472:デフォルトの名無しさん 09/08/28 19:17:38 a1 = ary.sort a2 = a1.uniq i = 0 a1.find_all {|v| if v.eql? a2[i] i += 1 false else true end } またselectかと言われそうだけどこのスレでは三回目 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch