implicit def doubleToInt(x:Double):Int={
println("double to nt ...")
x.toInt
}
def main(args: Array[String]): Unit = {
var i:Int=1;
var d:Double=1.1;
d=i
i=d
i=100.1
i=100.1
}
implicit val defaultPassword:String="88888888"
def reg(name:String)(implicit password:String="123456"):Unit={
println(s"您注册成功,姓名:${name},密码:${password}")}
def main(args: Array[String]): Unit = {
reg("小花")
reg("小白")("admin")
}
class KM(var value:Double){override def toString:String=s"${value}千米"}
class BM(var value:Double){override def toString:String=s"${value}百米"}
class M(var value:Double){override def toString:String=s"${value}米"}
implicit def km2bm(km:KM):BM=new BM(km.value*10)
implicit def bm2m(bm:BM):M=new M(bm.value*100)
implicit def xxxx(km:KM):M=new M(km.value*1000)
def main(args: Array[String]): Unit = {
val km=new KM(1.1)
val bm:BM=km
println(km)
println(bm)
val m:M=bm
println(m)
val m1:M=new KM(2)
println(m1)
class User {
def insertUser():Unit={
println("添加一个新用户...")
}
}
class UserExt {
def updateUser():Unit={
println("修改用户.......")
}
}
implicit def XXX(user:User):UserExt={
new UserExt
}
def main(args: Array[String]): Unit = {
val u1 =new User()
u1.insertUser()
u1.updateUser()