普通String型の変数にInt型のデータを代入しようとするとエラーになるが、 implicitキーワードが付与された関数を使うことで、 型のチェックエラーを修正するためにコンパイラがプログラムに挿入され 暗黙の型変換が行われる。
scala> val str:String = 10
<console>:7: error: type mismatch;
found : Int(10)
required: String
val str:String = 10
^
scala> implicit def intToString(num:Int):String = {
| println("数値から文字列へ変換")
| num.toString
| }
warning: there were 1 feature warning(s); re-run with -feature for details
intToString: (num: Int)String
scala> val str:String = 10
数値から文字列へ変換
str: String = 10