//隐式函数:编译器偷偷的,帮我做的转换
//Int -> Double 成功
//Double -> Int 报错
object test {
//张三的函数
def getAge():Double = {
8.5
}
//函数名:tranform 不重要
//函数的参数类型和返回值类型是重要的,他约定了把什么类型转换成什么类型!
implicit def tranfrom11111(d:Double)={
println("implicit 被调用了")
d.toInt
}
//小花
def main(args: Array[String]): Unit = {
val i:Int = 1
//系统自动完成的:把一种类型的数据转换成了另一种类型的数据。 -- 隐式转换。
val d:Double = i //int ---> double
//不是所以的类型都可以转换 隐式转换。Double--->Int
// var j:Int = 1.2
val age:Int = getAge()
println("今年",age)
}
}
scala隐式函数
于 2024-12-09 08:47:55 首次发布