object Demo{
class A01{
def doSth():Unit = {
println("1")
}
}
implicit class A02(a01: A01){
def doSth2():Unit = {
println("2")
}
}
def method01(str : String):Unit = {
println(str)
}
implicit def method02(num : Int):String = {
"num:"+num
}
implicit val str02 : String = "str"
def method03(num : Int = 3)(implicit str : String):Unit = {
println(str+num)
}
def main(args: Array[String]): Unit = {
val a = new A01
//类隐式转换
a.doSth2()
//方法隐式转换
method01(1)
//参数隐式转换
method03(8)
}
}
scala 隐式转换
于 2022-09-09 14:34:40 首次发布