我刚接触 Scala 并正在尝试一些实践练习。
我想通过将隐式转换函数放在伴生对象中来使用隐式转换。但是,编译器只会在使用时才检测到隐式转换。
class ImplicitTest {
import Implicits.implicitInt;
println(implicitInt)
def implicitm1(implicit i : Int) = 1
println(implicitm1)
}
object Implicits {
implicit val implicitInt = 1
}
这段代码可以成功编译。但是,如果我注释掉第三行
\\println(implicitInt)`
那么我得到了编译时错误。
println(implicitm1)`
这段文字是说
could not find implicit value for parameter i:Int`
not enough arguments for method implicit m1(implicit i:Int) . Unspecified value parameter i`
我在这里做错了什么?
提前感谢。