Swift语言中与C/C++和Java不同的语法(四)

这一节,我们将会讨论一下Swift中的函数相关的基本内容

首先是函数的创建:

func sayHello (name:String) -> String {
   return "Hello"+name            
} 

上述即是函数的创建方法:

func函数声明的关键字 
sayHello函数名
(name:String)参数列表
-> String函数的返回值
{
return "Hello"+name函数体 }

当函数没有返回值的时候可以这样写:

func sayHello (name:String) -> Void {
         
} 
或者
func sayHello (name:String) -> () {
         
} 

需要注意的是Void 的V是大写的,因为Void是一个类型。

当有多个返回值的时候可以利用元组作为返回类型

func findMaxAndMin(numbers:[Int])->(maxValue:Int,minVlue:Int){
  return (maxValue,minVlue)
}
let result = findMaxAndMin([1,2,3,4,5,6])
result.maxValue
result.minValue

返回值需要与声明中的返回值名称一致。

为了防止传入的值为空,需要改为可选型:

func findMaxAndMin(numbers:[Int])->(maxValue:Int,minVlue:Int)?{
      guard numbers.count > 0 else{
      return nil
      }
  return (maxValue,minVlue)
}    

通过guard关键字进行判断,在可选型中我们已经讲过了

在对函数进行调用的时候,所有的参数名都不可以省略:

func sayHello (name:String, greeting:String) -> String {
   return name+greeting            
}

sayHello(name:“PlayGround”, greeting:“Hello”)
如果在函数声明中用下划线代替:
func sayHello (name:String, _:String) -> String {
   return name+greeting            
}
那么调用的时候可以省略
sayHello(name:“PlayGround”, “Hello”)

 

posted @ 2017-08-27 23:08  冬日降临  阅读(247)  评论(0编辑  收藏  举报