swift函数
2015-10-02 15:39
423 查看
OC函数
-(返回值类型) 方法名 (参数){
函数的实现部分
}
swift中函数的关键字 叫做 func
func 函数名(参数) -> 返回值类型{
实现部分}
函数的声明与实现部分 ,
func 问候语(name:String,day:String)->String{
return “hello ,(name) ,today is (day)”
}
函数调用
print(问候语(“Lisa”, “星期三”))
比较函数 ,判断第一层函数传入的数组中是否有大于10的数, 如果大于10 返回true ,如果小于10 返回false
-(返回值类型) 方法名 (参数){
函数的实现部分
}
swift中函数的关键字 叫做 func
func 函数名(参数) -> 返回值类型{
实现部分}
函数的声明与实现部分 ,
func 问候语(name:String,day:String)->String{
return “hello ,(name) ,today is (day)”
}
函数调用
print(问候语(“Lisa”, “星期三”))
1. 元组作为函数返回值
传入一个Int 型的数组,返回最大值,最小值,和、func 计算(var 数组:[Int])->(max:Int ,min:Int ,sum :Int){ var max = 数组[0] var min = 数组[0] var sum = 0 for item in 数组{ if max < item{ max = item } if min > item{ min = item } sum += item } return (max,min,sum) }
调用这个函数
let 计算结果 = 计算([10,22,54,23,13,67]) print(计算结果) print("max = \(计算结果.max),min = \(计算结果.min) ,sum = \(计算结果.sum)")
2. swift 函数中可以嵌套函数
func returnFifteen() ->Int{ var ten = 10 func addFive(){ ten += 5 } addFive() addFive() addFive() return ten } print(returnFifteen())
3.函数作为返回值的情况 ( 返回函数的参数列表 ->返回函数的返回值)
func makeFunc()->(Int->Int){ func addFive(a:Int)->Int{ return a+5 } return addFive } var func1 = makeFunc() print(func1(12))
4.实现makeComputerFunc 这个函数,传入一个 +-*/ 。返回值返回一个函数,调用函数传入两个值,然后返回计算结果
func makeComputerFunc(operation:String)->((Int,Int) -> Int){ switch operation{ case "+": func add(num1:Int,num2 :Int)->Int{ return num1 + num2 } return add case "-": func sub(num1:Int,num2 :Int)->Int{ return num1 - num2 } return sub case "*": func multi(num1:Int,num2 :Int)->Int{ return num1 * num2 } return multi case "/": func div(num1:Int,num2 :Int)->Int{ return num1 / num2 } return div default: func none(num1:Int,num2 :Int)->Int{ return 0 } return none } } //在这里func3 == sub 这个函数 var func3=makeComputerFunc("+") print(func3(20,12))
5. 函数作为参数的情况。
第一层函数,参数为一个数组。和一个比较的函数。 返回值是一个bool类型。比较函数 ,判断第一层函数传入的数组中是否有大于10的数, 如果大于10 返回true ,如果小于10 返回false
func hasAnyMatches(numbers :[Int],condition :(Int)->Bool) ->Bool{ for num in numbers{ if condition(num){ return true } } return false } func moreThanTen (num:Int) -> Bool{ if num < 1{9 return true }else{ return false } } print(hasAnyMatches([2,11,10,10,5,5,3], moreThanTen))
相关文章推荐
- Swift学习笔记7——闭包(Closures)
- swift元组
- Swift学习笔记6——函数(Function)
- Swift 语言的相关数据
- Swift语法特点
- swift学习
- swift详解之二十九------谈谈debug的一些高级用法lldb
- 我的IOS成长之路——by Swift
- 初步swift语言学习笔记9(OC与Swift杂)
- Swift学习笔记7:关闭
- Swift1_关闭
- swift 注意事项 (十六) —— 可选链
- Swift教程-视频拍摄教程
- What's New in Swift 2 —— guard关键词
- swift练习二
- Swift快速入门-3-運算子、運算元
- Swift快速入门-2-型别安全及推断、整点浮点转换
- swift开发笔记9 - 正向和反向页面传参
- Swift学习- 下标脚本(十二)
- 写Swift用Cocoapods兼容IOS7