Kotlin 函数

函数 是只在调用时运行的代码块。

您可以将数据(称为参数)传递到函数中。

函数用于执行某些操作,也称为 方法


预定义函数

所以你已经知道函数是什么了。

For example, println() is a function. It is used to output/print text to the screen

例如,println() 是一个函数。它用于向屏幕 输出/打印 文本:

实例
  1. fun main() {
  2. println("Hello World")
  3. }

创建自己的函数

要创建自己的函数,请使用 fun 关键字,并写出函数名,后跟 () 括号:

实例

创建一个名为 "myFunction" 的函数,该函数应该输出一些文本:

  1. fun myFunction() {
  2. println("I just got executed!")
  3. }

调用函数

现在您已经创建了一个函数,可以通过 调用 它来执行它。

要在 Kotlin 中调用函数,请在函数名后面写两个括号()

在下面的示例中,调用 myFunction() 时,它将打印一些文本(操作):

实例
  1. fun myFunction() {
  2. println("I just got executed!")
  3. }
  4. fun main() {
  5. myFunction()
  6. }

如果需要,可以多次调用函数:

实例
  1. fun myFunction() {
  2. println("I just got executed!")
  3. }
  4. fun main() {
  5. myFunction()
  6. myFunction()
  7. myFunction()
  8. }

函数参数

信息可以作为参数传递给函数。

参数在函数名后面的括号内指定。可以添加任意数量的参数,只需用逗号分隔即可。请注意,必须指定每个参数的类型(Int、String 等)。

下面的示例有一个函数,它将名为 fname 的 字符串 作为参数。调用函数时,我们传递一个名字,该名字在函数内部用于打印全名:

实例
  1. fun myFunction(fname: String) {
  2. println(fname + " Doe")
  3. }
  4. fun main() {
  5. myFunction("John")
  6. myFunction("Jane")
  7. myFunction("George")
  8. }
当一个 参数 被传递给函数时,它被称为 参数。从上面的例子来看:fname 是一个 参数,而 JohnJaneGeorge 是参数

多参数

可以有任意多个参数:

实例
  1. fun myFunction(fname: String, age: Int) {
  2. println(fname + " is " + age)
  3. }
  4. fun main() {
  5. myFunction("John", 35)
  6. myFunction("Jane", 32)
  7. myFunction("George", 15)
  8. }
注意:当使用多个参数时,函数调用的参数数量必须与参数数量相同,并且参数的传递顺序必须相同。

返回值

在上面的例子中,我们使用函数来输出一个值。在下面的示例中,我们将使用函数 返回 一个值并将其分配给变量。

要返回值,请使用 return 关键字,并在函数的参数后面指定 返回类型(本例中为 Int):

实例

具有一个 Int 参数和 Int 返回类型的函数:

  1. fun myFunction(x: Int): Int {
  2. return (x + 5)
  3. }
  4. fun main() {
  5. var result = myFunction(3)
  6. println(result)
  7. }

使用两个参数:

实例

具有两个 Int 参数和 Int 返回类型的函数:

  1. fun myFunction(x: Int, y: Int): Int {
  2. return (x + y)
  3. }
  4. fun main() {
  5. var result = myFunction(3, 5)
  6. println(result)
  7. }

返回值的简写语法

还有一种用于返回值的简写语法。无需指定返回类型,即可使用 = 运算符代替。Kotlin 十分智能,可以自动解析:

实例
  1. fun myFunction(x: Int, y: Int) = x + y
  2. fun main() {
  3. var result = myFunction(3, 5)
  4. println(result)
  5. }