function - 快速从一个函数返回多个值

标签 function swift return

如何从 swift 中的函数返回 3 个相同类型 (Int) 的独立数据值?

我正在尝试返回一天中的时间,我需要将小时、分钟和秒作为单独的整数返回,但是从同一个函数一次返回,这可能吗?

我想我只是不明白返回多个值的语法。这是我正在使用的代码,我在处理最后一行(返回)时遇到了问题。

如有任何帮助,我们将不胜感激!

func getTime() -> Int
{
    let date = NSDate()
    let calendar = NSCalendar.currentCalendar()
    let components = calendar.components(.CalendarUnitHour | .CalendarUnitMinute | .CalendarUnitSecond, fromDate: date)
    let hour = components.hour
    let minute = components.minute
    let second = components.second
    let times:String = ("\(hour):\(minute):\(second)")
    return hour, minute, second
}

最佳答案

返回一个元组:

func getTime() -> (Int, Int, Int) {
    ...
    return ( hour, minute, second)
}

然后它被调用为:

let (hour, minute, second) = getTime()

或:

let time = getTime()
println("hour: \(time.0)")

关于function - 快速从一个函数返回多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27531195/

相关文章:

javascript/jquery 错误 "invalid object initializer"

ios - 为什么场景(Action-Set)添加到 Home(HMHome)总是有更新的 Characteristic(HMCharacteristic)值 :HomeKit

c# - 为什么在使用 Environment.Exit() 时需要返回,而不是抛出的异常?

javascript - 如何在java脚本中单击后将带有<i>元素的<li>元素添加到<ul>

swift - 如何让一个按钮消失并快速替换为另一个按钮?

C++ 无法在类(和命名空间)中重载函数

ios - 用结构变量重新排列 UITableView?

ios - 如何通过 swift 将底线添加到 subview 中的多个 UITextField?

c++ - C 与 C++ 函数问题

C exit 表现得像 return 吗?