【Ruby3.x】Array::delete()メソッドの使い方
deleteメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
deleteメソッドは、配列から指定された要素をすべて削除するメソッドです。このメソッドは、呼び出し元の配列自体を変更する破壊的な操作を行います。具体的には、deleteメソッドに引数として渡されたオブジェクトと等しい(Rubyの==演算子で比較して同じと判断される)配列内のすべての要素を検索し、それらを配列から取り除きます。
要素が正常に削除された場合、このメソッドは削除されたその要素を返します。もし、指定された要素が配列内に一つも見つからなかった場合は、nilを返します。
また、deleteメソッドはオプションでブロックを受け取ることができます。この場合、削除する要素が配列内に見つからなかったときに、nilを返す代わりに、渡されたブロックが実行され、そのブロックの評価結果が戻り値となります。
このメソッドは、配列から特定の値を完全に排除したい場合や、配列の要素を条件に応じて整理したい場面で非常に役立ちます。元の配列が変更される点に注意し、必要に応じてdupメソッドなどで配列の複製を作成してから使用することを検討してください。
構文(syntax)
1my_array = [1, 2, 3, 2, 4] 2my_array.delete(2)
引数(parameters)
obj
- obj: 配列から削除したい要素
戻り値(return)
Object or nil
指定された要素が配列内に存在し、削除された場合はその要素自体を返します。要素が見つからなかった場合はnilを返します。