swift学习语言基础--函数

作者: 醉春风 | 来源:发表于2016-08-26 17:09 被阅读49次

函数

Swift函数与c和objective-c有些不同,C的函数表达式比较简单,oc则需要本地参数和外部参数设置名称,swift的参数提供默认值,简化了函数调用,并可以通过在输入输出函数在函数执行完毕之后修改传递的变量。
Swift中的每个函数都有一个类型,包括函数的参数类型和返回类型。您可以方便的使用此类型像任何其他类型一样,这使得它很容易将函数作为参数传递给其他函数,甚至从函数中返回函数类型。函数也可以写在其他函数中来封装一个嵌套函数用以范围内有用的功能

1、 swift函数结构如下:

func  函数名( 参数变量:类型 ,参数变量:类型...){}
    说明: 
        1: func 是函数关键字
        2:{} 函数体
        3: 参数变量是默认常量类型,不能在函数函数体里面直接修改
        即 func A (value:String)  与 func A (let value:String)写法是相同的,即value 是常量。
例如
func  SayHello(value :String,value1:String){
  let str = value+" "+value1
    print(str)
}
SayHello("hello","swift")
运行结果
hello swift
 

########注意
value 和value1 都默认是常量,相加,结果必定是常量,所以一定要用let接着,如果用var 会报错。
注意:value和value1不可再函数体里直接修改,如果是下面的写法就会报错:
func SayHello(value :String,value1:String){
value = "hello"
}
但是这并不是不可修改,看下面:

func 函数名( var  参数变量 : 参数类型 ) {}
    说明 
      1: func 函数关键字
      2: var 参数变量 :参数类型   表示参数变量是可变变量,不是常量类型,可以任意修改

例如
func  SayHello(var value :String){
    value = "hello" //value  是被var 修改了,value是可变变量
   print(value)
}

SayHello("test")
输出 hello

2、 可变参数

fun 函数名 (参数名:参数类型...){}
说明:
通过在变量类型名后面加入(...)的方式来定义可变参数
可变参数可以接受零个或多个值,可变参数的传入值在函数体中变为此类型的一个数组

func arithmeticMean(numbers: Double...) -> Double {
    var total: Double = 0
    for number in numbers {
        total += number
    }
    return total / Double(numbers.count)
}

3、外部参数名

func  函数名 ( 外部参数名  参数变量名:类型 ,外部参数名  参数变量名:类型)
  说明:
     1:外部参数名 + 局部参数变量名 : 类型 ,构成一个参数
     调用方法
      函数名(外部参数名 :传入值,外部参数名:传入值)

func sayHello(to person: String, and anotherPerson: String) -> String {
    return "Hello \(person) and \(anotherPerson)!"
}
print(sayHello(to: "Bill", and: "Ted"))
// prints "Hello Bill and Ted!"

相关文章

  • Swift 语言基础

    Swift 语言基础 Swift语言介绍 Swift基础部分 第一个Swift程序 Swift没有main函数,第...

  • swift学习语言基础--函数

    函数 Swift函数与c和objective-c有些不同,C的函数表达式比较简单,oc则需要本地参数和外部参数设置...

  • iOS必备技能

    Objective-C/Swift Objective-C语言基础 Swift语言基础 Library、Frame...

  • swift问题小结

    1.swift是面向对象还是函数式编程语言 swift是函数式也是面向对象的语言。swift是面向对象语言,因为他...

  • Swift特性

    Swift是面向对象还是函数式的编程语言 Swift 既是面向对象的,又是函数式的编程语言。说 Swift 是面向...

  • Swift基础学习(函数)

    函数结构 函数结构 函数类型 多参数函数:参数之间用逗号(,)隔开 无参数函数:注意,即使一个函数不带有任何参数,...

  • 使用Swift编程语言开发iOS应用(一)

    1. 在开发iOS应用之前需要学习一些Swift语言基础,在Swift Playground上练习Swift语法是...

  • Swift5 基础教程与进阶合集

    Swift5 基础 Swift5 基础(一)Swift编译流程、基础语法、流程控制、函数、枚举[https://w...

  • Swift中的rethrows详解

    我最近在学习Swift函数式编程时,越来越觉得Swift是一门强大的语言。在 Swift 的世界中,函数不再是二等...

  • swift4.1 系统学习十 函数

    swift的函数与其他语言中的函数还是有很多的不同点的, 我们在本节中一起学习swift中的函数都有哪些特性。 辅...

网友评论

    本文标题:swift学习语言基础--函数

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