scalaに関するaggren0xのブックマーク (1)

  • Scala Tips / 多重度の表現

    多重度が1の場合は、オブジェクトをそのまま参照すればOKです。 多重度が0または1の場合、Javaだとnull値か否かで判定するのが普通でしたが、ScalaではOptionを使います。nullは例外を除いて使わないのが基方針です。多重度0または1の表現にnull値を利用すると、変数型やメソッド引数の型、メソッド返却値の型で多重度1の場合と多重度0または1の場合の見分けがつかず、バグを温床になっていました。多重度0または1をOptionで表現することで、この問題を回避することができます。 多重度1以上の場合、ScalaではListなどのコレクションクラスを用いて表現します。表では代表してListを記述していますが、用途によって他にも選択肢があります。Listなどのコレクションクラスは多重度0の場合も使えるので、静的型付けで多重度0を排除することはできません。制約などを用いて別枠で処理を加え

  • 1