Skip to content

Instance Method

rounded(rule:increment:)

iOS 15.0+ iPadOS 15.0+ Mac Catalyst 15.0+ macOS 12.0+ tvOS 15.0+ watchOS 8.0+
Modifies the format style to use the specified rounding rule and increment.
func rounded(rule: Decimal.FormatStyle.Configuration.RoundingRule = .toNearestOrEven, increment: Int? = nil) -> Decimal.FormatStyle

Parameters

rule

The rounding rule to apply to the format style.

increment

A multiple by which the formatter rounds the fractional part. The formatter produces a value that is an even multiple of this increment. If this parameter is nil (the default), the formatter doesn’t apply an increment.

Return Value

A decimal format style modified to use the specified rounding rule and increment.

Discussion

The following example creates a default Decimal.FormatStyle for the en_US locale, and a modified style that rounds integers to the nearest multiple of 100. It then formats the value 1999.95 using these format styles.

let defaultStyle = Decimal.FormatStyle(locale: Locale(identifier: "en_US"))
let roundedStyle = defaultStyle.rounded(rule: .toNearestOrEven,
                                        increment: 100)
let num: Decimal = 1999.95
let defaultNum = num.formatted(defaultStyle) // "1,999.95"
let roundedNum = num.formatted(roundedStyle) // "2,000"