Scala日記

Scalaの備忘録。ときどき研究の話。

2016-03-01から1ヶ月間の記事一覧

Option型のコレクションから Some(x) の値 x だけを取り出すには flatten

val opts: Seq[Option[Int]] = Seq(Some(2), None, Some(3)) のようなものから値のあるものだけを取り出して、 List(2, 3) を作りたいときに、Scalaを覚えたての頃はやり方がよく分からなくて、最初にやっていたのが opts.filter(_ != None).map(_.get) だっ…

=> Unit と () => Unit と Unit => Unit の違い

先日、op: Unit => Unit と書かざるを得ない状況に直面した。それで、この関数を op()として呼び出したときに「多分あなたが意図していることと違うことしてますよ」みたいなwarningが出て気づいたこと。ScalaのUnitは値がないことを表す型なわけだが、「実…