-
map / collect与えられたブロックを評価した結果の配列を返す
-
each_with_index要素とそのインデックスをブロックに渡して繰り返す
-
inject / reduce自身のたたみこみ演算を行う
-
each_slice / each_cons要素を指定された数ずつ要素を渡して繰り返す.
each_sliceメソッドは要素を指定された数で区切ってブロックに渡すため、要素数が指定された数で割り切れないときには最後だけ渡される数が少なくなります。
一方each_consメソッドは、先頭から要素を1つずつ選び、さらに余分に指定された数に合うように要素を選び、それらをブロックに渡していきます。
-
reverse_each要素を逆順にブロックに渡して繰り返す
-
all?全ての要素が真であればtrueを返す
-
any?真である要素が1つでもあればtrueを返す
-
none?全ての要素が偽であればtrueを返す
-
one?1つの要素だけが真であればtrueを返す
-
member? / include?指定された値と==メソッドがtrueとなる要素があるときにtrueを返します。
-
find / detectブロックを評価して最初に真となる要素を返します
-
find_index要素の代わりにインデックスを返す
-
find_all / select条件を満たす全ての要素を返す
-
reject偽になった全ての要素を返す
-
grep指定したパターンとマッチする(===メソッドがtrueとなる)要素を全て含んだ配列を返す
-
sort要素を<=>メソッドで比較して昇順にソートした配列を、新たに生成して返します。
ブロックを取る場合には、ブロックの評価結果を元にソートします。 -
sort_byブロックの評価結果を<=>メソッドで比較して昇順にソートした配列を使って、元の配列をソートした新しい配列を生成して返します。
-
max / minそれぞれ要素の最大値と最小値を返します。
ただし<=>メソッドで比較するため、全ての要素がそれに対応している必要があります。またブロックを渡すと、ブロックの評価結果を元に大小判定を行います。 -
max_by / min_byブロックの評価結果が最大 / 最小である要素を返すブロックの評価結果が最大であった要素を返します。
-
count要素数を返す
-
cycle要素を先頭から順に取り出し、末尾まで到達したら再度先頭に戻り、それを繰り返します。
-
group_byブロックの評価結果をキーとし、同じキーを持つ要素を配列としたハッシュを返す
-
zip自身と引数に指定した配列から、1つずつ要素を取り出して配列を作り、それを要素とする配列を返します。
-
first / take先頭から指定した数の要素を配列として返します。firstメソッドのみ数を指定しない場合に先頭の要素のみを返します。
-
take_while先頭からブロックを評価し、最初に偽になった要素の直前までを返す
-
droptakeメソッドとは逆に、先頭から指定した数の要素を取り除いた残りの要素を配列として返す
-
drop_while先頭からブロックを評価し、最初に偽になった要素の手前までを切り捨て、残りの要素を配列として返す
-
lazymapメソッドやselectメソッドなどのメソッドが、遅延評価を行うように再定義されます。
遅延評価になるとそれぞれのメソッドが配列ではなくEnumerator::Lazyを返すようになるため、メッソドを評価するタイミングを文字通り遅らせることができます。
ログイン