Scala中的隐式转换
package qiqiobject qqqqq {//给参数设置一个默认值:如果用户不传入,就使用这个值def sayName(implicit name:String="小花"):Unit={println(s"我叫:$name")}//需求:能够自己设置函数的参数默认值,而不是在代码中固定写死//1.在函数的默认参数的前面补充关键字:implicit//2.在定义变量的前面 补充关键字:implicit//3.调用函数时,不加()implicit val defaultValue="小李"def main(args: Array[String]): Unit = {sayName// sayName("小明")// sayName()}
}
package qiqiobject qqqq {def getAge():Double={8.5}//函数名:transform 不重要!!!!//函数的参数类型 和 返回值类型是重要的,它约定了把什么类型implicit def tranform11111(d:Double)={println("implicit 被调用了")d.toInt}def main(args: Array[String]): Unit = {val i:Int=1val d:Double=ival age:Int=getAge()println("今年",age)}
}