読者です 読者をやめる 読者になる 読者になる

Tbpgr Blog

Ruby プログラマ tbpgr(てぃーびー) のブログ

Functional Collection Patterns

概要 Functional Collection Patterns 詳細 Pattern URL Map Pattern http://d.hatena.ne.jp/tbpg/20131209/1386589674 Filter Pattern http://d.hatena.ne.jp/tbpg/20131209/1386590008 Reduce Pattern http://d.hatena.ne.jp/tbpg/20131209/1386590299

Functional Collection Patterns | Reduce Pattern

概要 Reduce Pattern 詳細 Collectionの全ての要素を元にスカラー値を返す。 Rubyではreduce(inject)が該当。 サンプル # encoding: utf-8 list = [1, 2, 3, 4] p list.reduce(0) {|sum, e|sum += e} 結果 10 参考 http://www.ugrad.cs.jhu.edu/~wsix/collec…

Functional Collection Patterns | Filter Pattern

概要 Filter Pattern 詳細 Collectionの各要素から条件に一致する要素のみを抽出する。 Rubyではselectが該当。 サンプル # encoding: utf-8 list = [1, 2, 3, 4] p list.select {|e|e.even?} 結果 [2, 4] 参考 http://www.ugrad.cs.jhu.edu/~wsix/collectio…

Functional Collection Patterns | Map Pattern

概要 Map Pattern 詳細 Collectionの各要素を1対1で変換するFunctionを作成すること。 Rubyではmap(collect)が該当。 サンプル list = [1, 2, 3, 4] p list.map {|e|e + 1} 結果 [2, 3, 4, 5] 参考 http://www.ugrad.cs.jhu.edu/~wsix/collections.pdf