Swift(三.函数)
一.swift中的函数分为以下几类吧
1>无参无返 2>无参有返 3>有参无返 4>有参有返 5>有参多返
二.看下面几个例子吧
1>无参无返
func about() ->Void{}
也可以写成func about() ->() {}
还可以写成func about() {}
2>无参有返
func readM() ->String{ return "字符串" }
3>有参无返
func eat(food : String) {}
4>有参有返
func sum(num1 : Int, num2 : Int) ->Int{return num1 + num2}
5>有参多返
func eat(food1 : String,food2: String) ->(String,String){
var first = "水"
var second = "牛奶"
if food1.characters.count > 0{
first = food1
}
if food2.characters.count > 0{
second = food2
}
return(first,second)
}
三.函数的使用注意
1>内参和外参,顾名思义,函数外面的就是外参,函数内部的就是内参.默认从第二个参数开始,又是内参又是外参,如果第一个参数也想成为外参,在变量名前面加一个标签就行,如果不想要外参,在参数前面加_+空格(还要加个空格)
2>默认参数,如果没有传入具体的参数,可以使用默认参数
3>可变参数,swift函数参数是可以变化的话,后面可以加... 但是要同一类型
4>默认情况下,参数是值传递,如果要改名外面的变量,那么要传该变量的地址,加个关键字 inout
5>函数可以嵌套,当有些常量或变量(比如地图里面需要获取2个地方的地标,但是在2个函数里面的话就不能把这2个地标直接进行渲染选择路线),过了该函数就释放了,但是同时需要2个函数的常量或变量值,那么可以嵌套函数来使用,在嵌套的函数里面可以同时获取2个常量或变量的值了
6>函数的类型,每个函数都可以有自己的类型,可以是基本数据类型,也可以是自定义的类型等,类型有参数和返回值类型组成.函数还可以作为方法参数或者返回值使用,总之在swift里面,函数的使用是非常灵活.具体怎么使用就需要经验的多多积累了.
Swift(三.函数)的更多相关文章
- Swift语法基础入门三(函数, 闭包)
Swift语法基础入门三(函数, 闭包) 函数: 函数是用来完成特定任务的独立的代码块.你给一个函数起一个合适的名字,用来标识函数做什么,并且当函数需要执行的时候,这个名字会被用于“调用”函数 格式: ...
- Swift系列三 - 函数
函数在任何语言中都是存在的,Swift中函数更加灵活. 一.函数的定义 1.1. 有返回值(形参默认是let,也只能是let) func pi() -> Double { return 3.14 ...
- Swift 语言函数
import Foundation // 函数声明于实现 func sayHello(name){ print("Hello \(name)") } // 函数调用 sayHell ...
- swift 之 函数
swift的函数跟脚本语言有很多神似之处. 如果有一天用swift开发服务器 ,很期待哇(一切皆有可能,毕竟人家说要跑在Linux上),
- Swift 中函数使用指南
关于Swift中的各种函数的使用的总结 前言 时间久了,好多东西我们就会慢慢忘记,在这里总结一下Swift中函数的使用原则,把大部分的函数使用技巧用代码示例来做了演示,但是如果想提高,还是要多多思考才 ...
- Python进阶(三)----函数名,作用域,名称空间,f-string,可迭代对象,迭代器
Python进阶(三)----函数名,作用域,名称空间,f-string,可迭代对象,迭代器 一丶关键字:global,nonlocal global 声明全局变量: 1. 可以在局部作用域声明一 ...
- 窥探Swift之函数与闭包的应用实例
今天的博客算是比较基础的,还是那句话,基础这东西在什么时候都是最重要的.说到函数,只要是写过程序就肯定知道函数是怎么回事,今天就来讨论一下Swift中的函数的特性以及Swift中的闭包.今天的一些小实 ...
- 窥探 Swift 之 函数与闭包的应用实例
今天的博客算是比较基础的,还是那句话,基础这东西在什么时候 都是最重要的.说到函数,只要是写过程序就肯定知道函数是怎么回事,今天就来讨论一下Swift中的函数的特性以及Swift中的闭包.今天的一些小 ...
- Swift学习——A Swift Tour 函数
Functions and Closures 函数和封闭性(闭包) Functions 函数的使用 Swift中的函数定义和OC中有明显的差别了,使用func定义函数,在括号里定义參数和类型,用 ...
随机推荐
- 标准I/O的替代软件
标准I/O并不完善. 标准I/O库的一个不足之处是效率不高,这与它需要复制的数据量有关.当使用每次一行函数fgets和fputs时,通常需要复制两次数据:一次是在内核和标准I/O缓冲之间(当调用rea ...
- 转:ORACLE制造方法的比较
转自:http://blog.itpub.net/133041/viewspace-438549/ 1.离散制造. 2.重复制造 3.流式制造 Oracle Applications 支持离散.项目. ...
- java中substring和indexof() 和lastindexof()
java中substring和indexof() 和lastindexof() str=str.substring(int beginIndex);截取掉str从首字母起长度为beginIndex的字 ...
- JAVA Oauth 认证服务器的搭建
http://blog.csdn.net/binyao02123202/article/details/12204411 1.软件下载 Oauth服务端: http://code.google.com ...
- Meta http-equiv属性
http-equiv顾名思义,相当于http的文件头作用,它可以向浏览器传回一些有用的信息,以帮助正确和精确地显示网页内容,与之对应的属性值为content,content中的内容其实就是各个参数的变 ...
- android中使用Intent在activity之间传递数据
android中intent传递数据的简单使用: 1.使用intent传递数据: 首先将需要传递的数据放入到intent中 Intent intent = new Intent(MainActivit ...
- MVC3中使用AuthorizeAttribute特性来完成登陆权限的验证
以前判断用户是否登录,判断用户Session是否为空,一般会在这个页面写使用: if (HttpContext.Session.IsNewSession) { //todo Login } 每个需要验 ...
- MVC Filter自定义异常(拦截)
// ----------------------------------------------------------------------- // <copyright file=&qu ...
- (五)Hibernate 操作对象
所有项目导入对应的hibernate的jar包.mysql的jar包和添加每次都需要用到的HibernateUtil.java 第一节:Hibernate 中四种对象状态 临时状态(transient ...
- linux管理网络连接指令
ethtool eth0 查看 eth0对应网卡的设置 ethtool -i eth0 查看 eth0网卡的驱动信息 ethtool -S eth0 查看网卡的统计信息 ethtool -s eth ...