Skip to content

Instantly share code, notes, and snippets.

@zwaldowski
Created April 18, 2016 15:11
Show Gist options
  • Save zwaldowski/f99caab8b53493abf6b8623a85c27889 to your computer and use it in GitHub Desktop.
Save zwaldowski/f99caab8b53493abf6b8623a85c27889 to your computer and use it in GitHub Desktop.
Friendly rounding
import Foundation
let formatter = NSNumberFormatter()
formatter.currencyCode = "USD"
formatter.numberStyle = .CurrencyStyle
formatter.roundingMode = .RoundHalfUp
formatter.maximumSignificantDigits = 3
formatter.generatesDecimalNumbers = true
formatter.lenient = true
formatter.stringForObjectValue(NSDecimalNumber(string: "4.44")) // => $4.44
formatter.stringForObjectValue(NSDecimalNumber(string: "4.434")) // => $4.43
formatter.stringForObjectValue(NSDecimalNumber(string: "4.435")) // => $4.44
formatter.stringForObjectValue(NSDecimalNumber(string: "5004.4333339")) // => $5,000
formatter.stringForObjectValue(NSDecimalNumber(string: "4.0")) // => $4
formatter.numberFromString("$5004.4344")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment