【Ruby3.x】Array::select!()メソッドの使い方
select!メソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
select!メソッドは、配列の要素を特定の条件に基づいて選択し、元の配列自体をその結果で更新する(破壊的に変更する)メソッドです。このメソッドは、呼び出された配列の各要素に対して、与えられたブロックを実行します。ブロックが真(true)と評価される要素だけが配列内に残り、条件を満たさない要素は配列から削除されます。
たとえば、数値の配列から偶数のみを残したい場合や、特定の条件に合致するオブジェクトだけを配列に残したい場合に利用できます。select!メソッドは、ブロック内で定義された条件式の結果に基づいて要素をフィルタリングし、その結果で元の配列を直接更新します。
このメソッドの戻り値は、変更された配列自身です。ブロックの条件によって配列の内容が一切変更されなかった場合でも、このメソッドは元の配列自身を返します。元の配列を変更せずに条件に合う要素を新しい配列として取得したい場合は、破壊的ではないselectメソッドを使用してください。select!は、配列の内容を直接書き換える必要があり、元の配列の参照を保持したい場合に特に有効な、Rubyにおける重要なデータ操作メソッドの一つです。
構文(syntax)
1array.select! { |item| condition }
引数(parameters)
引数なし
引数はありません
戻り値(return)
Array または nil
指定された条件に合致する要素を配列から選択し、元の配列をその要素で置き換えた場合に、置き換え後の配列を返します。条件に合致する要素が一つもなかった場合は nil を返します。