【Swift】学习笔记(六)——函数
来源:互联网 发布:asp在线客服系统源码 编辑:程序博客网 时间:2024/05/18 03:14
函数 懂编程语言的来说这个是最基本的了,任何语言都有函数这个概念,函数就是完成特定任务的独立代码块。
函数怎么创建:
1、创建一个无参无返回值的函数(实际上所有的函数都有返回值,这个函数返回void,它是一个空元组)
func testFunc(){ }
2、创建一个带返回值的函数
func testFunc() -> String{ return "hello"}
3、创建一个带参数和返回值的函数
func testFunc(name: String) -> String{ return "hello"+name}
4、创建一个带多个参数和多个返回值的函数
func testFunc(name: String,age: Int) -> (myName:String,myAge:Int){ return (name,age)}
5、创建带参数名称的函数
func testFunc(myName name: String,myAge age: Int) -> (myName:String,myAge:Int){ return (name,age)}
ps:调用
testFunc(myName:"小王", myAge:18)
6、第5中的另外一种写法,就是外部参数名和局部变量名是一样的时候。
func testFunc(#name: String,#age: Int) -> (myName:String,myAge:Int){ return (name,age)}testFunc(name: "小王", age: 18)
7、创建带默认值参数的函数
func testFunc(#name: String,age: Int = 10) -> (myName:String,myAge:Int){ return (name,age)}testFunc(name: "小王", age: 18)
ps:带默认值的参数要么不指定外部参数名(swift会自己默认指定一个就相当于带了#号了)要么必须指定,不能用#号
8、创建可变参数的函数
func allNums(nums: Double...) -> Double{ var totalNum: Double = 0 for num in nums{ totalNum += num } return totalNum}allNums(1,2,3)
9、函数参数是常量,不能修改的喔
例如:
func error(a: Int){ a = 2 这就会出现一个错误:Cannot assign to 'let' value 'a'}
那可以创建能够修改的么。当然可以。增加var关键字即可。
func error(var a: Int){ a = 2}error(3)
10、函数参数是值传递的,那有啥办法让它变成引用传递呢,也就是让参数经过了函数的修改,函数外值发生改变了
func yy(inout a:Int,inout b: Int) { var c = a a = b b = a}yy(&10, &20)
但是,这样是错误的,哪里错了呢。就是函数调用的时候,传入的时字面量,这怎么改。所以要传入变量
var a = 10,b=20yy(&a, &b)
11、头脑大风暴:函数居然有类型,它还能够作为参数、类型。
例如:
func yy(inout a:Int,inout b:Int)
这个函数,它的类型是 (Int,Int)-> () .它可以和int double这种用哦。 ---- 太强大了 - 怎么强大呢。其实也就是给函数换了一个名称而已。例如前面的YY方法。还可以这样写:
func yy(a:Int,b: Int) { var c = a}var testTT : (Int,Int) -> () = yy;
注意的是,这不支持参数 inout。。。
12、函数嵌套
func yy(a:Int,b: Int) { func add(a:Int,b:Int) -> Int{ return a + b } var test = add(a, b) - a}
在函数里面定义函数,在函数里面调用函数,可以尝试一下在yy函数外面调用add函数,看看是什么效果。。。。
0 0
- 【Swift】学习笔记(六)——函数
- swift 笔记 (六) —— 函数
- 字符和字符串—Swift学习笔记(六)
- Swift 学习笔记 —— 函数
- Swift 笔记 六: Swift 函数详解
- Python学习笔记(六)— 函数
- 学习Swift笔记 (六)
- Swift学习——Swift基础详解(六)
- swift闭包——swift学习(六)
- 函数——Swift学习笔记(九)
- Swift学习笔记(二)——函数
- Swift学习笔记系列——(5)函数
- Swift学习笔记(三十四)——函数类型
- 黑马程序员——Swift学习笔记:函数
- Swift学习笔记6——函数(Function)
- Swift学习笔记——函数、方法,属性
- Swift学习笔记(11)——函数
- Swift学习-函数(六)
- Android-- 一张图理解getWidth和getMeasuredWidth
- TCP/IP 端口号大全
- Source Insight基本使用和快捷键
- [Object-c] 获取版本号等信息
- Android手机Root授权原理细节全解析
- 【Swift】学习笔记(六)——函数
- 省市区数组
- GRE写作必备句型
- FPGA图像处理-ISP之前言
- webview
- 为什么写测试用例?编写测试用例从何着手?测试用例包含什么内容?
- 如何向中级程序员转变
- 杭电 1860 统计字符
- 数据库创建