如何在Swift 3.0中使用函数

时间:2016-12-28 16:40:17

标签: swift

我正在尝试创建一个返回s字符串值的函数,它不使用输入值。代码在函数之外成功测试。我得到这个编译器错误:

  

意外的非空返回值。

  Func GetPickerDate () {
  var strDate: String

   //do stuff here to obtain result string

   return strDate
   }

3 个答案:

答案 0 :(得分:1)

所以swift中的函数是这样编写的:

func <name> ( [param1, param2, ...]) -> <return type>

但是,当返回类型为Void时,您可以忽略-> Void。所以你经常会看到

func <name> ( [param1, param2, ...])

所以在你的情况下你需要的是

func getPickerDate () -> String {
    var strDate: String
    // do stuff
    return strDate
}

答案 1 :(得分:1)

问题是你没有告诉它返回类型是什么。以下是apple的示例。这个函数有一个'person'输入,这是一个字符串,就像它在这里所说的那样(person: String)和一个输出类型字符串的输出,就像它在这里所说的那样-> String

func greet(person: String) -> String {
    let greeting = "Hello, " + person + "!"
    return greeting
}

希望这有帮助!

答案 2 :(得分:-2)

请使用以下内容:

func GetPickerDate () -> String {
  var strDate: String = ""

   //do stuff here to obtain result string

   return strDate
}