[解決済み] Swift - 整数から時間/分/秒への変換
2022-04-21 20:09:35
質問
の時間変換について、基本的な質問があります。 スウィフト .
時間/分/秒に変換したい整数があります。
例
Int = 27005
を与えると
7 Hours 30 Minutes 5 Seconds
PHP でこれを行う方法を知っていますが、残念ながら swift は PHP ではありません :-)。
swiftでこれを実現するためのヒントがあれば、素晴らしいことです。 よろしくお願いします。
どのように解決するのですか?
定義
func secondsToHoursMinutesSeconds(_ seconds: Int) -> (Int, Int, Int) {
return (seconds / 3600, (seconds % 3600) / 60, (seconds % 3600) % 60)
}
使用方法
> secondsToHoursMinutesSeconds(27005)
(7,30,5)
または
let (h,m,s) = secondsToHoursMinutesSeconds(27005)
上記の関数は、Swiftのタプルを利用して、一度に3つの値を返します。 を使ってタプルを再構築します。
let (var, ...)
の構文を使用するか、必要に応じて個々のタプルのメンバにアクセスすることができます。
実際に文字でプリントアウトする必要がある場合は
Hours
などの場合は、このようなものを使用します。
func printSecondsToHoursMinutesSeconds(_ seconds: Int) {
let (h, m, s) = secondsToHoursMinutesSeconds(seconds)
print ("\(h) Hours, \(m) Minutes, \(s) Seconds")
}
なお、上記の実装で
secondsToHoursMinutesSeconds()
は
Int
引数を使用します。 もし
Double
バージョンでは、返り値をどうするか決める必要があります。
(Int, Int, Double)
または
(Double, Double, Double)
. などと試してみてはいかがでしょうか。
func secondsToHoursMinutesSeconds(seconds: Double) -> (Double, Double, Double) {
let (hr, minf) = modf(seconds / 3600)
let (min, secf) = modf(60 * minf)
return (hr, min, 60 * secf)
}
関連
-
IOS8 Development Guide Error Thread 1: signal SIGABRT
-
[解決済み] SwiftからObjective-Cのコードを呼び出すにはどうしたらいいですか?
-
[解決済み] Swiftで#pragmaマーク?
-
[解決済み] Swift Betaのパフォーマンス:配列のソート
-
[解決済み] SwiftでStringを配列に分割する?
-
[解決済み] Swiftの@selector()?
-
[解決済み] Objective-Cで文字列が空かどうかをテストするにはどうすればよいですか?
-
[解決済み] UIDevice uniqueIdentifierは非推奨 - どうしたらいいの?
-
[解決済み] UIViewの左上と右上だけにcornerRadiusを設定する方法は?
-
[解決済み】Swiftで2つのDate(月/日/時間/分/秒)の差を取得する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
iOS classic error Undefined symbols for architecture XXX:
-
EXC_BAD_ACCESS (code=2, address=0x0)
-
[解決済み] Xcode 7のエラーです。"Missing iOS Distribution signing identity for ..." (iOS配布用署名IDがありません)
-
[解決済み] iOS 8 UITableViewのセパレータインセット0が機能しない件
-
[解決済み] Xcode 6のバグ:Interface Builderファイル内の不明なクラス
-
[解決済み] テキストフィールドを移動する方法(次へボタン/完了ボタン)
-
[解決済み] アプリのプレビュー用にiOSシミュレータのビデオをキャプチャー
-
[解決済み] iPadマルチタスクのサポートには、これらの方向が必要です。
-
[解決済み] コア・データ エンティティの全インスタンスを削除する最短の方法
-
[解決済み] iOS 11、Apple TV 4Kなどを搭載したXcode 9でワイヤレスデバッグを行う方法とは?