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定义函数,在括号里定义參数和类型,用 ...
随机推荐
- CSS3:clip-path具体解释
我的一个学生,Heather Banks,想要实现他在Squarespace看到的一个效果: 依据她的以往经验,这个站点的HTML和CSS是全然在她的能力范围以内,于是我帮助她完毕了这个效果.显示na ...
- wpf 透明窗体中使用webbrowser
wpf ,PNG图形半透明窗体 ,使用webbrowser控件 附件:http://files.cnblogs.com/xe2011/WpfApplication1_webbrowser_tran ...
- WPF WebBrowser
XAML <Window x:Class="WpfApplication5.Window1" xmlns="http://schemas.microso ...
- ios7自带的晃动效果
ios7自带的晃动效果 by 伍雪颖 - (void)registerEffectForView:(UIView *)aView depth:(CGFloat)depth; { UIInterpola ...
- hdu1250(Java)大数相加的问题
Hat's Fibonacci Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tota ...
- Flash学习初总结
话说尝试了一周多的Flash编程,有些理解为什么很多程序员都不喜欢用Flash编程了. 首先,就是没有编程的难度,想要编好Flash,也就是有良好的视觉效果,那么关键点不在你的程序逻辑或者代码条理上, ...
- LoadRunner安装包(性能测试工具分享)
今天在测试课指导老师朱香元的指导下,开始了测试软件的安装,下面我分享一下整个安装流程,最后我会附带安装包的 第一步:链接:http://pan.baidu.com/s/1pXqk2 密码:csjk , ...
- CSS的!important修改权重
!important语法和描述 !important为开发者提供了一个增加样式权重的方法.应当注意的是!important是对整条样式的声明,包括这个样式的属性和属性值. #example { fon ...
- groupBy
public List groupBy(List list,String flag,String... sortName) throws Exception{ Map<String,List&l ...
- Spring MVC 3.0 返回JSON数据的方法
Spring MVC 3.0 返回JSON数据的方法1. 直接 PrintWriter 输出2. 使用 JSP 视图3. 使用Spring内置的支持// Spring MVC 配置<bean c ...