Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Enumerableモジュール > one?
one? -> bool
[permalink][rdoc]one? {|obj| ... } -> bool
ブロックを指定しない場合は、 Enumerable オブジェクトの要素のうち ちょうど一つだけが真であれば、真を返します。 そうでなければ偽を返します。
ブロックを指定した場合は、Enumerable オブジェクトの要素を ブロックで評価した結果、一つの要素だけが真であれば真を返します。 そうでなければ偽を返します。
%w{ant bear cat}.one? {|word| word.length == 4} # => true %w{ant bear cat}.one? {|word| word.length > 4} # => false [ nil, true, 99 ].one? # => false [ nil, true, false ].one? # => true [].one? # => false