[Ruby]any?メソッドの使い方

any?メソッド

配列内の要素を1つずつ評価して、真の値が一つでも存在していたらtrueを返すメソッド。

後ろにブロックで条件もつけられるよ。

オブジェクト.any? { |要素| ブロック処理}

参考例1(条件なし)

array1 = [nil, nil, nil, "lotte", nil]
array2 = [false, false, false]

array1.any?
array2.any?

=> true
=> false

参考例2(条件あり)

array1 = [nil, false, 11]
array2 = [1, 3, 5, 7, 9]
array3 = ["ogino", "fujiwara", "nakamura", "yasuda", "yamaguchi"]

array1.any?(Integer)
array2.any? { |n| n.even? }
array3.any? { |w| w.length == 9 }

=> true
=> false
=> true

array1:Integer(数値)型の11があるのでtrue

array2:even?(偶数があるかを判定する)の条件で、偶数がないのでfalse

array3:length(文字列の長さを調べる)で、9文字の”yamaguchi”が当てはまるのでtrue

タイトルとURLをコピーしました