「Ruby」rejectメソッドで配列からnilを削除するサンプル
構文
1.配列名.reject{ |変数名| 変数名.nil? }
rejectを使って配列からnilを削除します。
元の配列の要素は変わりません。
2.配列名.reject!{ |変数名| 変数名.nil? }
「reject!」を使って配列からnilを削除します。
元の配列の要素は変わります。
使用例
#!/usr/bin/ruby
tarr = [ "study", nil, "skill", nil, "become","smart"]
p tarr.reject{ |str| str.nil? }
p "元の配列の要素は変わりません"
p tarr
p "**************"
p tarr.reject!{ |str| str.nil? }
p "元の配列の要素は変わります"
p tarr
#!/usr/bin/ruby
tarr = [ "study", nil, "skill", nil, "become","smart"]
p tarr.reject{ |str| str.nil? }
p "元の配列の要素は変わりません"
p tarr
p "**************"
p tarr.reject!{ |str| str.nil? }
p "元の配列の要素は変わります"
p tarr
#!/usr/bin/ruby tarr = [ "study", nil, "skill", nil, "become","smart"] p tarr.reject{ |str| str.nil? } p "元の配列の要素は変わりません" p tarr p "**************" p tarr.reject!{ |str| str.nil? } p "元の配列の要素は変わります" p tarr
実行結果
["study", "skill", "become", "smart"]
"元の配列の要素は変わりません"
["study", nil, "skill", nil, "become", "smart"]
"**************"
["study", "skill", "become", "smart"]
"元の配列の要素は変わります"
["study", "skill", "become", "smart"]
["study", "skill", "become", "smart"]
"元の配列の要素は変わりません"
["study", nil, "skill", nil, "become", "smart"]
"**************"
["study", "skill", "become", "smart"]
"元の配列の要素は変わります"
["study", "skill", "become", "smart"]
["study", "skill", "become", "smart"] "元の配列の要素は変わりません" ["study", nil, "skill", nil, "become", "smart"] "**************" ["study", "skill", "become", "smart"] "元の配列の要素は変わります" ["study", "skill", "become", "smart"]