迅速向下舍入

时间:2015-07-21 15:59:25

标签: swift

我想将Double舍入到一定数量的小数,总是向下舍入。

示例

四舍五入到.00 => 1.5679999至1.56

四舍五入到.000 => 1.5679999至1.567

round(1.5679999 * 100) / 100 //returns 1.57
round(1.5679999 * 1000) / 1000 //returns 1.568

我想要Double而不是连接字符串

3 个答案:

答案 0 :(得分:37)

只需将round替换为floor

答案 1 :(得分:29)

从swift 3.0开始:

myDouble.rounded(.down)

答案 2 :(得分:8)

SWIFT4 +

在不同情况下的取整方式

var w = 6.5
w.round(.toNearestOrAwayFromZero)
// w == 7.0

// Equivalent to the C 'trunc' function:
var x = 6.5
x.round(.towardZero)
// x == 6.0

// Equivalent to the C 'ceil' function:
var y = 6.5
y.round(.up)
// y == 7.0

// Equivalent to the C 'floor' function:
var z = 6.5
z.round(.down)
// z == 6.0