ScalaのListを操作する(mapとforeach)
List操作を制するものはなんとやらという話を聞いたことがあるので、Scalaのリスト操作についてメモ。
mapとforeachの違い
データが何かにラップされているときはとりあえずmap関数!というのはあまりにも短絡的すぎますが、Listに対してもmapが適用できます。
まずはmapの例
scala> val x = List(1,2,3) x: List[Int] = List(1, 2, 3) scala> val y = x.map { num => | num + 1 | } res1: List[Int] = List(2, 3, 4) scala> y res2: List[Int] = List(2, 3, 4) scala> x res3: List[Int] = List(2, 3, 4)
リストに対してmap関数を適用すると、その中身に対して操作を行い、(今回の例だと要素に1を加える)結果が格納されます。
続きましてforeach
scala> val x = List(1,2,3) x: List[Int] = List(1, 2, 3) scala> val y = x.foreach { num => | num + 1 | } y: Unit = ()
はい。何も返さないですね。Listの中身を使って別の関数がお仕事を頑張るときに使う感じでしょうか。
余談
はてなブログ、アクセス解析もついてるし、これで十分な感じですね。学んだことはきちんと記録に残していくように頑張りたいと思います。では。