当前位置: 首页 > 面试题库 >

Swift-将整数转换为小时/分钟/秒

轩辕经赋
2023-03-14
问题内容

关于 Swift中的 时间转换,我有一个(有点?)基本问题。

我有一个整数,希望将其转换为小时/分钟/秒。

示例: Int = 27005会给我:

7 Hours  30 Minutes 5 Seconds

我知道如何在PHP中执行此操作,但是可惜,Swift不是PHP :-)

我如何迅速实现这一目标的任何技巧都太棒了!先感谢您!


问题答案:

定义

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元组一次返回三个值。您let (var, ...)可以使用语法对元组进行解构,或者可以根据需要访问单个元组成员。

如果您实际上需要Hours使用etc等字词将其打印出来,请使用以下命令:

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)
}


 类似资料:
  • 问题内容: 我需要将秒转换为“小时:分钟:秒”。 例如:“ 685”转换为“ 00:11:25” 我该如何实现? 问题答案: 您可以使用以下功能:

  • 问题内容: 我有一个称为分钟的变量,例如250分钟。 如何使用以下格式的PHP将分钟数转换为小时数和分钟数: 问题答案:

  • 问题内容: 我一直在尝试将秒值(在BigDecimal变量中)转换为editText之类的字符串,例如“ 1小时22分33秒”或类似的内容。 我已经试过了: (我有一个roundThreeCalc值,以秒为单位,所以我尝试在这里进行转换。) 然后,将editText设置为sequnceCaptureTime String。但这没有用。每次都强制关闭该应用程序。我完全不在这里,我们将不胜感激。祝您编

  • 因此,我试图制作一个程序,可以将s从输入转换为h、m和s。到目前为止,我的代码如下所示: 好的,所以我必须将s,m,h初始化为0,因为如果不是的话,我在if语句中遇到了问题,所以我把它设置为0,因为我可以稍后更改:)好的。所以现在这个程序的问题是,如果我输入3603,我会得到这个输出:3603s=1H60M3603s,如果我输入3600,我会得到:3600s=1H60M3600s,但输出应该分别是

  • 问题内容: 我需要将毫秒值85605304.3587转换为类似0d 18h 21m的值。不知道如何启动它,是否像C#中的SQL中有类似TimeSpan的东西? 问题答案: 您可以显式进行计算。我认为是这样: 注意:某些数据库使用代替。

  • 我是Python新手,遇到了这个问题。我想创建一个程序,用户输入秒数,并将其转换为天、小时、分钟和秒。然而,例如,我希望程序在100000秒内输出1天、3小时、46分钟、40秒。然而,mine也用小数输入计算结果,比如说1.157天,其他类别也一样。任何帮助都将不胜感激,非常感谢。