最近Scalaのコレクションクラスに「groupBy」というメソッドがあることを知り、ちょっと使ってみました。 使ってみて改めて画期的なメソッドだな~と感じたのでちょっと紹介いたします。 groupbyメソッドは引数に渡した関数の戻り値をキーにしたマップを作成するメソッドです。同じキーを返した値がマップの値になります。 例として売上げを商品毎にまとめてみます。 売上げは というケースクラスで表現します。itemCodeが商品コードでnumberが売上げ数量という形になります。 このケースクラスを利用して というソースを実行すると と出力されます。商品コード毎のMapができています。 続いて、商品コード毎の売上数量の合計を求めるには とします。countGroupの内容を出力すると と出力されます。これを商品コードでソートするには とします。 普段こういった集計処理(というほどでもないですが