当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby Enumerable.minmax用法及代码示例


本文简要介绍ruby语言中 Enumerable.minmax 的用法。

用法

minmax → [minimum, maximum]
minmax {|a, b| ... } → [minimum, maximum]

根据给定的标准返回一个包含最小和最大元素的 2 元素数组。相等元素的顺序是不确定的并且可能是不稳定的。

没有参数也没有块,返回最小和最大元素,使用元素自己的方法<=>进行比较:

(1..4).minmax                   # => [1, 4]
(-4..-1).minmax                 # => [-4, -1]
%w[d c b a].minmax              # => ["a", "d"]
{foo: 0, bar: 1, baz: 2}.minmax # => [[:bar, 1], [:foo, 0]]
[].minmax                       # => [nil, nil]

在给定块的情况下,返回由块确定的最小和最大元素:

%w[xxx x xxxx xx].minmax {|a, b| a.size <=> b.size } # => ["x", "xxxx"]
h = {foo: 0, bar: 1, baz: 2}
h.minmax {|pair1, pair2| pair1[1] <=> pair2[1] }
# => [[:foo, 0], [:baz, 2]]
[].minmax {|a, b| a <=> b }                          # => [nil, nil]

相关: min max minmax_by

相关用法


注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Enumerable.minmax。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。