- Home ›
- Ruby入門 ›
- 配列(Array)クラス
配列から要素が「nil」のものを取り除く(compact)
Array クラスの compact メソッドを使用すると、配列に格納されている要素の中で nil のものを除外します。ここでは Ruby で要素が nil のものを取り除く方法について解説します。
(Last modified: )
要素が「nil」のものを取り除く
Array
クラスで用意されている compact
メソッドを使用すると、要素に nul
が含まれるものを除外します。
Arrayオブジェクト.compact
compact
メソッドは配列に含まれる要素の中で nil
である要素を取り除いた新しい配列を返します。
具体的には次のように記述します。
ary = [1, 2, nil, 3, 4, nil] newary = ary.compact
この場合、配列から nil
の要素を取り除いた次の新しい配列を取得します。
[1, 2, 3, 4]
また compact
メソッドには compact!
メソッドも用意されています。
Arrayオブジェクト.compact!
compact!
メソッドの場合には新しい配列を返すのではなく、対象の配列自身を nil
要素を取り除いた配列に変更します。
サンプルコード
実際に試してみます。
# encoding: UTF-8 ary = [1, 2, 3, nil, 4, nil] newary = ary.compact p ary p newary ary = [1, 2, 3, nil, 4, nil] ary.compact! p ary
実行結果は次のようになります。
-- --
Ruby で要素が nil のものを取り除く方法について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。