ブックマーク / kazuhira-r.hatenablog.com (1)

  • +:と:+でSeqに対してパターンマッチ - CLOVER🍀

    Scalaでパターンマッチによる分解で、よく紹介されるのはListだと思います。 例えば、このような変数を定義して val xs = List(1, 2, 3) このようなパターンマッチを行います。 xs match { case 1 :: 2 :: 3 :: Nil => println("matched!!") case _ => // ここには来ない } xs match { case one :: rest => println(s"matched!! one[$one], rest[$rest]") case _ => // ここには来ない } 結果。 matched!! matched!! one[1], rest[List(2, 3)]こんな感じのことを、Seqに対しても行うことのできる+:と:+の存在に今日気付きました。 知らなかったー! *まあ、ListもSeqですが S

    +:と:+でSeqに対してパターンマッチ - CLOVER🍀
    takaken1123
    takaken1123 2016/10/07
    [2016-10-07 15:23]
  • 1