ruby 配列操作

本稿の記事は、自分用のメモを目的としている記述です。内容は適時変更されます。

重複削除
array.uniq
 

配列の特定のデータを削除する
array.delete_if {|data| data.name == 'admin'}


配列をカンマ区切りのstringにする
str = array.join(“,”)

配列の中を検索する (1件)
user = users.find { |user| user[:id] == target_id }

配列の中を検索する(複数件)
user = users.select { |user| user[:id] == target_id }

配列のindexを取得する (引数に指定したデータのindexの取得)
array.index('hoge')

配列同士の検索
array1 & array2

配列同士の結合
merge_array = array1.concat(array2)

index込みで配列を回す
array.each_with_index { |hoge, index| }

ハッシュを配列に変換する
{ hoge: 1, fuga: 2 }.to_a

sortする
array = [3,2,1]
array = array.sort do |a,b|
  a <=> b
end
puts array
=> [1, 2, 3]

複合sort
array = array.sort_by do |t|
  [t.no, t.created_at]
end

配列の値を合計する
array.inject(:+)

配列の値を合計する(Railsの場合)
array.sum

mapなどで回している対象のメソッドの実行例
array.map(&:to_s)

Ruby2.5から追加 append/prepend 
array = [1,2,3]
array.append 4
array #=> [1,2,3,4]
array.prepend 0
array #=> [0,1,2,3]

[参考]

Back