Swiftの関数から複数の値を返す 質問する

Swiftの関数から複数の値を返す 質問する

Swift の関数から同じ型 (Int) の 3 つの個別のデータ値を返すにはどうすればよいでしょうか?

時刻を返そうとしています。時間、分、秒を別々の整数として返す必要がありますが、すべて同じ関数から一度に返すことは可能ですか?

複数の値を返す構文を理解していないだけだと思います。これは私が使用しているコードですが、最後の (return) 行で問題が発生しています。

ご協力いただければ幸いです。

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
}

ベストアンサー1

タプルを返します:

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

次のように呼び出されます:

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

または:

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

おすすめ記事