本文簡要介紹ruby語言中 Enumerable.max
的用法。
用法
max → element
max(n) → array
max {|a, b| ... } → element
max(n) {|a, b| ... } → array
根據給定標準返回具有最大元素的元素。相等元素的順序是不確定的並且可能是不穩定的。
沒有參數也沒有塊,返回最大元素,使用元素自己的方法<=>
進行比較:
(1..4).max # => 4
(-4..-1).max # => -1
%w[d c b a].max # => "d"
{foo: 0, bar: 1, baz: 2}.max # => [:foo, 0]
[].max # => nil
給定正整數參數n
,並且沒有塊,返回一個數組,其中包含存在的第一個 n
最大元素:
(1..4).max(2) # => [4, 3]
(-4..-1).max(2) # => [-1, -2]
%w[d c b a].max(2) # => ["d", "c"]
{foo: 0, bar: 1, baz: 2}.max(2) # => [[:foo, 0], [:baz, 2]]
[].max(2) # => []
給定一個塊,該塊確定最大元素。使用兩個元素 a
和 b
調用該塊,並且必須返回:
-
如果
a < b
則為負整數。 -
如果
a == b
則為零。 -
如果
a > b
則為正整數。
給定塊且不帶參數,返回由塊確定的最大元素:
%w[xxx x xxxx xx].max {|a, b| a.size <=> b.size } # => "xxxx"
h = {foo: 0, bar: 1, baz: 2}
h.max {|pair1, pair2| pair1[1] <=> pair2[1] } # => [:baz, 2]
[].max {|a, b| a <=> b } # => nil
使用給定的塊和給定的正整數參數n
,返回一個數組,其中包含由塊確定的存在的第一個 n
最大元素。
%w[xxx x xxxx xx].max(2) {|a, b| a.size <=> b.size } # => ["xxxx", "xxx"]
h = {foo: 0, bar: 1, baz: 2}
h.max(2) {|pair1, pair2| pair1[1] <=> pair2[1] }
# => [[:baz, 2], [:bar, 1]]
[].max(2) {|a, b| a <=> b } # => []
相關用法
- Ruby Enumerable.max_by用法及代碼示例
- Ruby Enumerable.map用法及代碼示例
- Ruby Enumerable.min_by用法及代碼示例
- Ruby Enumerable.minmax用法及代碼示例
- Ruby Enumerable.member?用法及代碼示例
- Ruby Enumerable.min用法及代碼示例
- Ruby Enumerable.minmax_by用法及代碼示例
- Ruby Enumerable.any?用法及代碼示例
- Ruby Enumerable.slice_before用法及代碼示例
- Ruby Enumerable.uniq用法及代碼示例
- Ruby Enumerable.find_all用法及代碼示例
- Ruby Enumerable.find_index用法及代碼示例
- Ruby Enumerable.drop用法及代碼示例
- Ruby Enumerable.each_cons用法及代碼示例
- Ruby Enumerable.entries用法及代碼示例
- Ruby Enumerable.flat_map用法及代碼示例
- Ruby Enumerable.reject用法及代碼示例
- Ruby Enumerable.each_with_index用法及代碼示例
- Ruby Enumerable.filter_map用法及代碼示例
- Ruby Enumerable.sort用法及代碼示例
- Ruby Enumerable.all?用法及代碼示例
- Ruby Enumerable.take用法及代碼示例
- Ruby Enumerable.reduce用法及代碼示例
- Ruby Enumerable.each_with_object用法及代碼示例
- Ruby Enumerable.sort_by用法及代碼示例
注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 Enumerable.max。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。