其他分享
首页 > 其他分享> > scala语言(八)-------隐式转换

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")
  }
}

标签:name,scala,sayName,-------,隐式,参数,implicit,String
来源: https://blog.csdn.net/weixin_52188717/article/details/121060580