1.invoke()函数
 meThod1(1,2,3)等价meThod1.invoke(1,2,3)
fun main() {
   val meThod1:(Int,Int,Int)->String={n1,n2,n3->
       val num="kotlin"
       println("num=$num,n1=$n1,n2=$n2,,n3=$n3")
       "num=$num,n1=$n1,n2=$n2,,n3=$n3,"
   }
   //调用  meThod1(1,2,3)==meThod1.invoke(1,2,3)
   meThod1.invoke(1,2,3)
   meThod1(1,2,3)
}
执行结果
 
 2.it关键字
 普通方法书写,如果只有一个参数会默认为it
//普通函数,如果只有一个参数会默认为it
fun getMethod(it:String):String{
    return "$it"
}
执行结果
 
 在匿名函数中的运用,it在一个参数时使用
fun main() {
   val meThod1:(Int,Int,Int)->String={n1,n2,n3->
       val num="kotlin"
       println("num=$num,n1=$n1,n2=$n2,,n3=$n3")
       "num=$num,n1=$n1,n2=$n2,,n3=$n3,"
   }
   //调用  meThod1(1,2,3)==meThod1.invoke(1,2,3)
   meThod1.invoke(1,2,3)
   meThod1(1,2,3)
   println(getMethod("c++"))
   
   //it在匿名函数中的运用,it在一个参数时使用,对比meThod1并没有在实现时传入参数
   val meThod2:(String)->String={
       "$it py"
   }
   //调用
   println(meThod2("c#"))
}
//普通函数,如果只有一个参数会默认为it
fun getMethod(it:String):String{
    return "$it"
}
执行结果,it默认为传入一个参数时的形参
 


















