Tbpgr Blog

Employee Experience Engineer tbpgr(てぃーびー) のブログ

Ruby | 二次元配列の各配列をまとめてreduce(inject)する

概要

二次元配列の各配列をまとめてreduce(inject)する

詳細

tbpgr_utils gemのArray#together_reduce(別名でtreduce, together_inject, tinjectもあり)
二次元配列の各配列をまとめてreduce(inject)します。

事前準備
gem install tbpgr_utils
主な用途

二次元配列の各配列をまとめてreduce(inject)したい場合。

サンプルコード
# encoding: utf-8
require 'tbpgr_utils'

list = [[*1..5], [*6..10]]
print list.together_reduce { |ret, first, second|first + second}
puts
list = [[*1..5], [*6..10]]
print list.together_reduce([]) { |ret, first, second|ret << first + second; ret}
puts
list = [[*1..5], [*6..10]]
print list.together_reduce({}) { |ret, first, second|ret[first] = second; ret}
puts
出力
15
[7, 9, 11, 13, 15]
{1=>6, 2=>7, 3=>8, 4=>9, 5=>10}