Time Swift 2从双人赛中获得分秒

Time Swift 2从双人赛中获得分秒,time,swift2,Time,Swift2,我当前以秒为单位存储时间(例如70.149秒)。我如何轻松地获得分和秒?我的意思是70.149秒是1分10秒。我怎样才能在swift中轻松做到这一点 下面是我想做的一个例子 let time:Double = 70.149 //This can be any value let mins:Int = time.minutes //In this case it would be 1 let secs:Int = time.seconds //And this would be 10 如何使用S

我当前以秒为单位存储时间(例如70.149秒)。我如何轻松地获得分和秒?我的意思是70.149秒是1分10秒。我怎样才能在swift中轻松做到这一点

下面是我想做的一个例子

let time:Double = 70.149 //This can be any value
let mins:Int = time.minutes //In this case it would be 1
let secs:Int = time.seconds //And this would be 10

如何使用Swift 2 OS X(而不是iOS)实现这一点这将是一个相对简单的解决方案。值得注意的是,这将截断部分秒数。如果需要控制,您必须在第三行使用浮点数学,并在转换为
Int
之前对结果调用
trunc()
/
ceil()
/
floor()

let time:Double = 70.149 //This can be any value
let mins:Int = Int(time) / 60 //In this case it would be 1
let secs:Int = Int(time - Double(mins * 60)) //And this would be 10
大概是这样的:

let temp:Int = Int(time + 0.5) // Rounding
let mins:Int = temp / 60
let secs:Int = temp % 60

谢谢你的回答。唯一的问题是四舍五入。这使它比我需要的稍微多一点。除此之外,它工作得很好!舍入是可选的,只需删除
+0.5
。这样就可以了,但是它还有一行代码和一个额外的变量,然后是@CharlesA answer。@iProgram-编码中的一种常见做法是避免重复操作。在CharlesA答案中,存在大量的强制转换和冗余操作,并使用非标准方法复制模操作。在这样一个小的代码示例中,这并没有什么不同,但是如果重复多次,您可能会看到性能上的差异。我认为这是更好的答案@伊敏荣谢谢你的提姆,我以后会考虑的,你是说这样更有效?而且,再看一眼,它看起来也更整洁了。