美文网首页
Swift学习Day3-----函数

Swift学习Day3-----函数

作者: 小破孩丫 | 来源:发表于2016-01-28 14:55 被阅读10次

函数

1.基本使用:func来声明一个函数,使用名字和参数来调用函数,使用->来指定函数返回值,例如:

func sum(x1:Int,x2:Int)->Int{

return x1+x2

}

2.使用元组返回多个值

func calculateCount(string:String)->(Int,Int,Int){

             var vow = 0, con = 0, oth = 0

             for character in string.characters{

            switch String(character).lowercaseString{

                 case "a","e","i","o","u":

                 ++vow

                case "b","c","d","f","g","h","j","k","l","m","n","p","q","r","s",      "t","v","w","x","y","z":

                ++con

              default:

               ++oth

          }

    }

           return(vow,con,oth)

}

3.函数的参数数量是可变的,用一个数组来获取,例如:

 func sumOf(numbers :Int...)->Int{

              var sum :Int = 0

              for number in numbers{

                     sum = sum + number

          }

                    return sum

  }

     print("sum = " + String(sumOf(1,2,3,4)))

4.函数可以嵌套函数。

被嵌套的函数可以访问外侧函数的变量,使用嵌套函数来重构一个太长或者太复杂的函数

func addCount(numbers : Double...){

           func add(var y:Int)->Int{

                         y += 5

                        return y

          }

                 print(add(10))

}

5.函数可以作为另一个函数的返回值

func isNow()->(Bool ->Int){ // (Bool ->Int)是将要调用函数的参数和返回值

func isToday(time: Bool)-> Int{

if time == true{

print("今天")

return 1

} else{

print("非今天")

return 2

}

}

return isToday

}

var now = isNow()

now(false)

6.函数当做参数传入另一个函数

// 小于20的数字

func lessThanTwenty(list:Int...)->Bool{

for num in list{

if num < 20{

return true

}

}

return false

}

// 奇数

func singleNum(num:Int..., condition:(Int...)-> Bool) -> [Int]{

var singleNumList = [Int]()

for item in num {

if condition(item) && item % 2 != 0{

singleNumList.append(item)

}

}

return singleNumList

}

print(singleNum(1,5,7,23, condition: lessThanTwenty))

7.函数参数名

外部参数名:有时当你调用一个函数将每个参数进行命名是非常有用的,以表明你传递给函数的每个参数的目的。

如果你希望用户函数调用你的函数时提供参数名称,除了设置本地地的参数名称,也要为每个参数定义外部参数名称。你写一个外部参数名称在它所支持的本地参数名称之前,之间用一个空格来分隔:

func lessThanTwenty(outList list:Int...)->Bool{

for num in list{

if num < 20{

return true

}

}

return false

}

lessThanTwenty(outList: 1)

相关文章

  • Swift学习Day3-----函数

    函数 1.基本使用:func来声明一个函数,使用名字和参数来调用函数,使用->来指定函数返回值,例如: func ...

  • Swift5.x-闭包(中文文档)

    引言 继续学习Swift文档,从上一章节:函数,我们学习了Swift函数相关的内容,如函数的定义和使用、函数参数、...

  • swift学习笔记②

    Swift学习笔记 - 文集 语法篇 一、函数 函数定义 Swift 定义函数使用关键字 func,functio...

  • C++函数指针和Swift的函数对象

    C++函数指针和Swift的函数对象 在C++中学习函数指针式非常痛苦的事情,而在Swift里面学习函数指针则是非...

  • Swift高阶函数解析

    一、锲子 最近在学习Swift过程中发现,Swift有不少高阶函数,这些函数为Swift支持函数式编程范式提供了强...

  • Swift学习笔记(二)

    今天继续 Swift 的学习: 6、Swift 函数的表达方式

  • Swift 5.x - 可选链接(中文文档)

    引言 继续学习Swift文档,从上一章节:析构函数,我们学习了Swift析构函数相关的内容。现在,我们学习Swif...

  • Swift学习:函数

    本篇将详细总结介绍Swift函数的用法;函数是一段完成特定任务的独立代码片段。你可以通过给函数命名来标识某个函数的...

  • swift学习-函数

    定义与调用 用func作为前缀来标志这是一个函数,用 (->) 加返回类型的名字表示该函数返回什么类型 参数与返回...

  • swift学习 --- 函数

    不带参数的函数 func helloWord() -> String { return "Hello word" ...

网友评论

      本文标题:Swift学习Day3-----函数

      本文链接:https://www.haomeiwen.com/subject/qcidkttx.html