swift定义和调用函数解析 – Swift最新教程

上一章Swift教程请查看:swift字典用法和操作

在本文中,你将通过示例学习有关函数、函数是什么、函数定义语法、调用函数、Swift中函数的类型的所有内容。

函数是什么?

函数是一组定义要执行的操作的语句,函数的主要用途是使代码可重用。

从技术上讲,你可以把一个函数想象成一台机器,机器执行特定的任务,请求输入,处理输入并返回输出。

函数的类型

由函数是预定义的还是由程序员创建的,可得出函数有两种类型:

  • 库函数——已经在Swift框架中定义的函数。
  • 用户定义函数——程序员自己创建的函数。

库函数

库函数是已经在Swift框架中定义的内置函数,这些功能是为了解决Swift中的常见问题,所以你不必自己解决它们。它们是简单的操作,如打印、查找最小值和最大值等。

你可以通过调用库函数来直接使用它。如果你想,你可以看到所有的功能在swift框架,只需写导入Swift,按Cmd并点击它,你将导航到一个新页面,搜索所有以func关键字开头的语句。

例1:库或内建函数

print("Hello, World!")

在上面的程序中,我们调用了一个在Swift框架中定义的内置打印函数,该函数用于在控制台中打印输出。

我们可以调用print()函数,因为Swift框架是自动导入到我们的项目的,否则,我们应该自己写import Swift来导入。

用户自定义函数

Swift也允许你定义自己的函数,创建自己的函数有助于编写代码来解决问题或执行Swift框架中没有的任务,你还可以在将来重用你的函数来执行类似的任务。

同样,函数也可以根据参数和返回语句进行分类,参见本系列文章Swift函数参数类型和返回类型。

定义一个函数

func function_name(args...) -> ReturnType {
    //statements
    return value
}

让我们简要地描述每个组件:

  • func是创建函数必须编写的关键字
  • function_name是一个函数的名称。你可以给它任何一个定义函数功能的名字。
  • args…定义函数接受的输入。
  • ->此操作符用于指示函数的返回类型。
  • ReturnType定义可以从函数返回的值的类型。例如Int, String等。
  • return关键字用于将程序的控制传递给函数调用,并从函数返回值。
  • 即使没有指定return关键字,函数也会在执行最后一条语句后自动返回。
  • value值表示从函数返回的实际数据。值类型必须与ReturnType匹配。

函数是如何工作的?

在Swift中函数如何工作

在上面的图中,function_name(args)语句使用参数值args调用/调用函数,然后离开当前代码段(即在它下面停止执行语句),并开始执行函数内部的第一行。

  • 该程序转到一行代码func function_name(Args…),并接受函数调用function_name(Args)期间传递的Args值。
  • 然后,程序执行在函数内部定义的语句statementsInsideFunction。
  • 函数内部的语句按从上到下的顺序依次执行。
  • 执行完最后一条语句后,程序离开函数,返回到从i开始的地方,也就是 function_name (args)。
  • Let val =将函数返回的值存储在一个常量val中。
  • 然后,执行语句statementsOutsideFunction。

例2:Swift中如何定义函数?

func greet(user:String) {
    print("Good Morning! \(user)")
}

上图是一个函数定义,它由以下组件组成:

  • 关键字func标记函数头的开始。
  • 在程序中唯一标识和调用函数的函数名greet。
  • (user:String)标记函数头的结尾,并接受String类型的参数。参见用参数定义函数的Swift函数参数类型和返回类型。
  • 该函数由内部的print语句组成,在调用函数后执行。

调用一个函数

一旦创建了函数,就可以在程序中调用它来执行函数中声明的语句。要调用一个函数,你只需要在函数名后面加上(),然后将输入参数作为:

greet(user: "Isac")

例3:调用Swift中的函数

func greet(user:String) {
    print("Good Morning! \(user)")
}
greet(user: "Isac")

在上面的代码中,greet(user:“Isac”)调用函数并传递类型为String的值Isac。然后,在函数内部执行print语句。

函数的返回语句

return关键字告诉程序离开函数并返回函数调用所在的行。

还可以使用return关键字传递值,其中值是变量或从函数返回的其他信息。

例3:带有return关键字的函数

func greet(user:String)-> String {
    return "Good Morning! \(user)"
}
let greeting = greet(user: "Isac")
print("""
     You have a new message
     \(greeting)
     """)

在上面的代码中,greet(user:“Isac”)调用函数并传递类型为String的Isac值。返回String类型的值并将程序传输给函数调用。

Let greeting =存储从函数返回的值。函数返回后,执行函数调用下面的print语句。

使用函数的注意事项

  • 给出一个反映函数用途的函数名。
  • 一个函数应该只完成一个任务,如果一个函数执行多个任务,则将其分解为多个函数。
  • 试着提前考虑所有情况,将语句分组到一个函数中,使代码可重用和模块化。
微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?