max -> object | nil
[permalink][rdoc][edit]max(n) -> [object]
-
範囲内の最大の値、もしくは最大の n 要素を返します。
- [PARAM] n:
- 取得する要素数。
(1..5).max # => 5
(1..5).max(3) # => [5, 4, 3]
始端が終端より大きい場合、もしくは、終端を含まない範囲オブジェクトの始端が終端と等しい場合は、引数を指定しない形式では nil を返します。引数を指定する形式では、空の配列を返します。
(2..1).max # => nil (1...1).max # => nil
(2..1).max(3) # => [] (1...1).max(3) # => []
max {|a, b| ... } -> object | nil
[permalink][rdoc][edit]max(n) {|a, b| ... } -> [object]
-
ブロックの評価結果で範囲内の各要素の大小判定を行い、最大の要素、もしくは最大の n 要素を返します。引数を指定しない形式では、範囲内に要素が存在しなければ nil を返します。引数を指定する形式では、空の配列を返します。
ブロックの値は、a > b のとき正、 a == b のとき 0、a < b のとき負の整数を、期待しています。
- [PARAM] n:
- 取得する要素数。
- [EXCEPTION] TypeError:
- ブロックが整数以外を返したときに発生します。
[SEE_ALSO] Range#last, Range#min, Enumerable#max
h = { 1 => "C", 2 => "Go", 3 => "Ruby" } (1..3).max { |a, b| h[a].length <=> h[b].length } # => 3
(1..3).max(2) { |a, b| h[a].length <=> h[b].length } # => [3, 2]