代码之家  ›  专栏  ›  技术社区  ›  shingo.nakanishi

如何在swift中使用cfnumberformatterroundingmode

  •  0
  • shingo.nakanishi  · 技术社区  · 8 年前

    如何使用 CFNumberFormatterRoundingMode 在斯威夫特?

    cfNumberFormatterRoundingMode格式 有许多 case

    kcfnumberformatterroundceiling朝着正无穷大方向旋转。

    kcfnumberformatterroundfloor向负无穷方向旋转。

    kcfnumberformatterrounddown round朝零。

    kcfnumberformatterroundup从零开始。

    kcfnumberformatterroundhalfeven向最近的整数取整,或 如果等距的话朝向偶数。

    kcfnumberformatterroundhalfdown向最接近的整数取整,或 如果距离相等,则接近零。

    kcfnumberformatterroundhalf向上舍入到最近的整数,或 如果距离相等,则远离零。

    一轮计算 Decimal 具有 NSDecimalRound(_:_:_:_:) . 小数舍入(u:u:u:) 只有参数 NSDecimalNumber.RoundingMode . nsdecimalnumber.roundingmode 有几个 案例 .

    大小写为最接近的可能返回值;捕获时 在两个正数中间取整;当夹在中间时 两个负数,四舍五入。

    大小写向下舍入返回值。

    大小写向上舍入返回值。

    案例银行家们把回报率调到尽可能接近的水平;当达到一半时 在两个可能性之间,返回最后一个数字是 甚至。

    我可以在swift中使用cfnumberformatterroundingmode吗? 有没有别的选择 小数舍入(u:u:u:) ?

    链接

    2 回复  |  直到 8 年前
        1
  •  1
  •   rmaddy    8 年前

    CFNumberFormatterRoundingMode 是用来和 CFNumberFormatter .

    使用起来比较方便 NumberFormatter 并设置它的 roundingMode 具有相同选项的属性。

    使用数字格式化程序,可以使用特定的 numberStyle (如小数、货币、百分比等)。

        2
  •  0
  •   shingo.nakanishi    8 年前
    import Foundation
    
    let f = NumberFormatter()
    f.numberStyle = .decimal
    f.maximumFractionDigits = 2
    f.roundingMode = .down
    
    f.string(from: Decimal(0.111) as NSNumber)
    f.string(from: Decimal(-0.111) as NSNumber)
    
    f.string(from: Decimal(0.116) as NSNumber)
    f.string(from: Decimal(-0.116) as NSNumber)