Ruby 1.8.7 Ruby 1.9
標準クラス・モジュール > Enumerable > none?
enum.none? {|item| block }
none?
メソッドは、ブロック引数itemに要素を入れながらブロックを繰り返し実行し、ブロックの戻り値がすべて偽であった場合にtrue
を返します。ブロックが真を返したときは、繰り返しを中断してfalse
を返します。レシーバが空のときはtrue
を返します。
次の例は、配列の要素がすべて10文字以下かどうかを調べます。
words1 = ["dog", "cat", "mouse", "whale"] puts words1.none? {|w| w.size > 10 } words2 = ["dog", "cat", "hippopotamus", "whale"] puts words2.none? {|w| w.size > 10 }
true false
ブロックを省略したときは、要素がすべて偽であるとき、あるいはレシーバが空であるときにtrue
を、真の要素が含まれていればfalse
を返します。
words = [nil, nil, false] puts words.none?
true