override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) print(getResult("哦这是什么:","这是Android啊",::logFun)); } /** 此函数作为参数传递 */ fun logFun(msg:String,msg2:String):Int { Log.d("----->msg:${msg},${msg2}","----") return 1; } /** * 在 Kotlin 中返回值为 Int * * 此方法接收一个无参数的函数并且无返回 */ private fun getResult(arg01:String,arg02:String,method: (arg1:String,arg2:String) -> Int) { System.out.println("----->msg:执行方法之前") var ret= method(arg01,arg02); System.out.println("----->msg:执行方法之后"+ret) }
arg01,arg02是实参, arg1,arg2是形参,是要传人的函数 ->Int 返回Int类型,如果没有返回值写成->Unit