本文简要介绍ruby语言中 Enumerable.partition
的用法。
用法
partition {|element| ... } → [true_array, false_array]
partition → enumerator
给定一个块,返回一个包含两个数组的数组:
-
第一个具有块返回真值的元素。
-
另一个具有所有其他元素。
例子:
p = (1..4).partition {|i| i.even? }
p # => [[2, 4], [1, 3]]
p = ('a'..'d').partition {|c| c < 'c' }
p # => [["a", "b"], ["c", "d"]]
h = {foo: 0, bar: 1, baz: 2, bat: 3}
p = h.partition {|key, value| key.start_with?('b') }
p # => [[[:bar, 1], [:baz, 2], [:bat, 3]], [[:foo, 0]]]
p = h.partition {|key, value| value < 2 }
p # => [[[:foo, 0], [:bar, 1]], [[:baz, 2], [:bat, 3]]]
如果没有给出块,则返回 Enumerator
。
相关: Enumerable#group_by
。
相关用法
- Ruby Enumerable.any?用法及代码示例
- Ruby Enumerable.slice_before用法及代码示例
- Ruby Enumerable.uniq用法及代码示例
- Ruby Enumerable.find_all用法及代码示例
- Ruby Enumerable.max用法及代码示例
- Ruby Enumerable.map用法及代码示例
- Ruby Enumerable.min_by用法及代码示例
- Ruby Enumerable.find_index用法及代码示例
- Ruby Enumerable.minmax用法及代码示例
- Ruby Enumerable.drop用法及代码示例
- Ruby Enumerable.member?用法及代码示例
- 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 Enumerable.one?用法及代码示例
- Ruby Enumerable.sum用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Enumerable.partition。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。