Kotlin 函数
Kotlin 是一种静态类型语言,因此函数在其中发挥了重要作用。我们对函数非常熟悉,因为我们在整个示例中都使用函数。函数是用关键字“fun”声明的。像任何其他 OOP 一样,它也需要一个返回类型和一个选项参数列表。
在下面的例子中,我们定义了一个名为 MyFunction 的函数,我们从主函数调用这个函数并传递一些参数。
fun main(args: Array<String>) { println(MyFunction("Newbiego.com")) } fun MyFunction(x: String): String { var c:String = "Hey!! Welcome To ---" return (c+x) }
上面的代码将在浏览器中产生以下输出。
Hey!! Welcome To ---Newbiego.com
该函数应声明如下:
fun <nameOfFunction>(<argument>:<argumentType>):<ReturnType>
以下是 Kotlin 中可用的一些不同类型的函数。
Lambda 函数
Lambda 是一个高级函数,它在声明和定义函数的同时大大减少了样板代码。 Kotlin 允许你定义自己的 lambda。在 Kotlin 中,你可以声明 lambda 并将该 lambda 传递给函数。
看看下面的例子。
fun main(args: Array<String>) { val mylambda :(String)->Unit = {s:String->print(s)} val v:String = "Newbiego.com" mylambda(v) }
在上面的代码中,我们创建了我们自己的 lambda 称为“mylambda”,并且我们已经将一个变量传递给这个 lambda,它是 String 类型并包含一个值“Newbiego.com”。
上面的代码将在浏览器中产生以下输出。
Newbiego.com
内联函数
上面的例子展示了我们可以在 Kotlin 应用程序中使用的 lambda 表达式的基础。现在,我们可以将 lambda 传递给另一个函数以获取我们的输出,这使调用函数成为内联函数。
看看下面的例子。
fun main(args: Array<String>) { val mylambda:(String)->Unit = {s:String->print(s)} val v:String = "Newbiego.com" myFun(v,mylambda) // 将 lambda 作为另一个函数的参数传递 } fun myFun(a :String, action: (String)->Unit) { // 传递 lambda print("Heyyy!!!") action(a)// 调用 lambda 函数 }
上面的代码将在浏览器中产生以下输出。使用内联函数,我们传递了一个 lambda 作为参数。任何其他函数都可以使用“inline”关键字成为内联函数。
Heyyy!!!Newbiego.com