Scalaで暗黙パラメータを使用する方法を見てきます。
暗黙パラメータの基本形
以下のようにimplicitキーワードを使って、暗黙パラメータを使用することができます。
考え方的にはグローバル変数に近いのでしょうか。
暗黙パラメータの基本形
implicit val implicitStr = "暗黙パラメータ" def main(arts: Array[String]) : Unit = { printImplicitStr //=> 暗黙パラメータ } def printImplicitStr(implicit str: String) : Unit = { println(str) }
型が一致するものを自動的に使用しているようです。
implicit val implicitInt = 1
の記述を追加しても、実行結果は変わりません。
ただし、
implicit val implicitStr2 = "暗黙パラメータ2"
とするとコンパイルエラーになります。
String型のImplicitパラメータが二つあるので、どちらを使用すればいいのか判別できないようです。