scala语言(八)-------隐式转换

1.隐式值和隐式参数
使用关键字impilicit定义
隐式值就是:implicit val name:String=“zjc”
隐式方法就是给参数用implicit定义
隐式转换作用:调用方法时,不需要传参,scala会自动寻找隐式值传入

object test11 {
  def main(args: Array[String]): Unit = {
    implicit val name="zjc"
   sayName
  }

  def sayName(implicit name:String): Unit ={
    println(s"$name is sayName")
  }
}

注意: (1)同类型隐式值只能定义一个
(2)当部分参数想要进行传参时,使用柯里化的方式将隐式参数单独起一个括号,调用时只需要给非隐式参数传参即可。
(3)定义多个隐式参数时,参数中只需要一个implicit

object test11 {
  def main(args: Array[String]): Unit = {
    implicit val name2="zjc"
    implicit val sex1=1
    sayName(18)
  }

  def sayName(age:Int)(implicit name:String,sex:Int): Unit ={
    println(s"$name is sayName,age is $age,sex is $sex")
  }
}
上一篇:Spark记录(一):Spark全景概述


下一篇:【Spark】【复习】Spark入门考前概念相关题复习