タグ

2016年2月19日のブックマーク (1件)

  • ScalaでtoSetやtoListとかを使うよりはbreakOutした方が少し速い

    ScalaにはtoSetやtoListなどのコレクション変換関数が用意されていますが、これを使うよりはbreakOutを使った方が若干速いよ、という話です。 #rpscalaで@xuwei_kさんに教えて頂きました。 toSetやtoListの使い方 まずはおさらいです。 val tmp = Seq(1, 2, 3) tmp.toSet tmp.toList tmp.toVector tmpみたいなコレクションがあるとき、toXXXXという関数で色々な型に変換できます。 今回対象とする問題 コレクションにはmapとか色々関数が用意されていますが、mapを呼び出した後でコレクションの型を変換する、というシーンが良くあるかと思います。 val tmp = (0 until 3).map(_ + 1).toSet みたいな感じで。 mapが一旦終わった段階でコレクションが構築されて、その後で別の